2011-06-09 130 views
0

我剛剛開始學習python 2.7,並且隨着每個新學習者我仍習慣於python使用的語法。我試着寫這樣的代碼:python錯誤打印函數

name = raw_input('What is your name?\n') 
print 'Hi, %s.' % (name) 

我想對上述程序的輸出應該是:

Hi, What is your name? 

但我得到的輸出:

What is your name? 

enter後鍵,我得到另一個輸出:

Hi, . 

我的代碼有什麼問題?

回答

3

沒有問題,它完全符合您的要求。

raw_input打印字符串參數(作爲提示),並從用戶讀取輸入,直到第一個換行符,返回它已讀取的文本。這正是發生的事情(在輸入之前嘗試輸入一些文本)。然後第二行取出該文本並將其放入格式化字符串中,打印結果。

+0

好的。感謝你的回答。我明白了你的觀點 – 2011-06-09 05:54:59

0

raw_input函數用於輸入提示符。您在函數中傳遞的字符串將在提示符後面打印,然後按輸入鍵完成輸入(以python的形式)。 之後,下一行print 'Hi, %s.' % (name)將打印出來,顯示用戶在提示中輸入的名稱,我假設您的情況爲None,因爲您在沒有任何輸入的情況下按Enter鍵。