2017-06-10 75 views
1

以下代碼用於添加給定的整數,將字符串double並將其分別連接到用戶的輸入整數,double和string。代碼如下,但它沒有輸出。它有什麼錯誤。如何打印到python 3的stdout?

i = 4 
d = 4.0 
s = 'Hackerrank' 
a = int(input()) 
b = long(input()) 
c = raw_input() 
print(a + i) 
print(b + d) 
print(s+c) 

請指出錯誤,並讓我知道它不工作的原因!

+9

'long'和'raw_input'在Python 3中不存在。您應該得到一些輸出('NameError'回溯)。既然你沒有提示輸入,你可能正在盯着一個等待你輸入內容的空白行。 –

+0

你的代碼等待輸入...也許這就是爲什麼你不打印? –

回答

2

考慮閱讀https://realpython.com/learn/python-first-steps/

,並迅速檢查你的代碼使用https://repl.it/languages/python3

您的原代碼的幾個誤區。這裏是修正版本:

i = 4 
d = 4.0 
s = 'Hackerrank' 
a = int(input()) 
b = float(input()) 
c = input() 
print(a + i) 
print(b + d) 
print(s+c) 

小提示:您可以將您的呼叫添加提示到input()這樣用戶就知道輸入的內容:

a = int(input("type int ")) 
b = float(input("type float ")) 
c = input("please type something") 

最後,如果你想運行它與python3在終端做:

python3 name_of_file.py 
+0

我已經使用了提示命令,但是,它似乎給錯誤,如果輸入不包含在用戶的qoutes中,我該如何解決它? –

+0

@ANIRUDHDUGGAL我認爲你的問題是你正在運行python 2,而不是python 3.該代碼在python3中工作得很好,沒有用qoutes括起來。要運行python 3,你必須編寫python3 your_program.py。查看更新後的答案。不要忘記接受答案,如果它是有用的:) –

0
在python 3

它只是輸入(),改變長漂浮

0

你好ANIRUDH DUGGAL

首先閱讀本最好的網站開始之前的Python 3,
1. https://www.tutorialspoint.com/python3/
2. https://docs.python.org/3/tutorial/

差異蟒蛇2之間python 3,
1. http://sebastianraschka.com/Articles/2014_python_2_3_key_diff.html
2. https://www.quora.com/What-are-the-major-differences-between-Python-2-and-Python-3

您的代碼完全適用於Python版本2,但如果你使用Python 3,因此不會因爲在Python 3工作是不同的東西語法,所以先閱讀Python 3的基本原理(了Syntex,內置功能, ...等等)。

使用python2:

#!/usr/bin/python 

# Using python 2 
i = 4 
d = 4.0 
s = 'Hackerrank' 

a = int(input("Enter the integer number: ")) 
b = long(input("Enter the long number: ")) 
c = str(raw_input("Enter the string: ")) 

print("Output1: %d" % (a + i)) 
print("Output1: %f" % (b + d)) 
print("Output1: %s" % (s+c))  

使用python3:

#!/usr/bin/python 

# Using python 3 
i = 4 
d = 4.0 
s = 'Hackerrank' 

a = int(input("Enter the integer number: ")) 
b = float(input("Enter the long number: ")) 
c = str(input("Enter the string: ")) 

print("Output1: %d" % (a + i)) 
print("Output1: %f" % (b + d)) 
print("Output1: %s" % (s+c))  

我希望我的回答對你有用。