2014-11-05 145 views
0

我是python的新手而且有點麻煩。如果你們可以幫助解釋如何做到這一點,爲什麼它的工作方式,它會很棒。我在python 3中試圖做出改變,很難學習python。我已經找了最後一個小時左右,試圖弄清楚這一點。我嘗試了各種各樣的(),「」,「組合」。謝謝您的幫助。我正在努力從我已經完成的codecademy python教程轉向python 3。這是我最初寫的東西,因爲我搞砸了。在python中使用%r和input()3

我試過把它放在()之外並在那裏擁有(),但是我一直在閱讀錯誤。

print ("How old are you?"), 
age = input("Enter: ") 
print ("How tall are you?"), 
height = input("Enter:") 
print ("What are you in to?"), 
interest = input("Enter: ") 

print ("So your %r and %r tall. Cool what do you like?"), 
print ("I like to do %r "), 

此代碼運行良好,但%r不會替換用戶輸入()。

回答

1

你需要提及你想替換其中的變量:

print("So your %r and %r tall. Cool what do you like?" % (age, height)) 

字符串%r是不以任何方式特殊:它只是由格式化操作%公認的佔位符值。

注意:尾隨的逗號在Python 3中沒有完成任何事情,因爲print只是一個常規函數。如果你想抑制換行,請使用以下代替:

print(..., end="") 

一般來說,閱讀Python文檔,指南和教程的時候,這是一個好主意,檢查什麼版本,它的目標。 Python 2和3有一些顯着的差異。

+0

謝謝你把它給我解釋這樣。今晚我會練習你們。 – TriGeo 2014-11-05 06:16:52

-1

嘗試這樣

print("So your",age, "and", height, "tall. Cool what do you like?") 
+0

我正在嘗試使用變量名稱來完成此操作。不過謝謝你的幫忙。我很感激。 – TriGeo 2014-11-05 06:11:22

+0

這不提供問題的答案。要批評或要求作者澄清,請在其帖子下方留言。 – Interrobang 2014-11-05 07:32:05

+0

@Interrobang是的,但它只是另一個建議 – Hackaholic 2014-11-05 07:35:28

0

你還可以嘗試:

print("So your {} and {} tall. Cool what do you like?".format(age,height)) 
+0

你的作品真的很好,我必須記住這一點。 – TriGeo 2014-11-05 06:16:05