2013-04-26 115 views
-6

此代碼有什麼問題?TypeError:無法連接'str'和'builtin_function_or_method'對象

def welcome(name): 
    print "congrats! You created your first Python bank account"+ name 


print "Hello welcome to the Python bank Account" 
print"To begin please enter your name" 
name=raw_input 
welcome(name) 
+4

'名稱=的raw_input( )' – 2013-04-26 16:28:38

+0

這是爲了我們的測驗嗎?否則,您會向我們提供您的預期和您實際得到的內容...... – glglgl 2013-04-26 16:30:05

+2

它不會創建_real_銀行帳戶 – 2013-04-26 16:30:15

回答

4

raw_input()是一個函數,所以你必須調用它,使其工作,也接受被打印在調用時可選參數:

name=raw_input("To begin please enter your name") 

例如:

In [61]: name=raw_input("enter your name") 
enter your name foo bar 

In [62]: name 
Out[62]: ' foo bar' 

只做name=raw_input只是創建一個新的參考raw_input,所以 你實際上試圖連接一個字符串和raw_input在你的函數 welcome其引發的錯誤:

In [63]: name=raw_input 

In [64]: name 
Out[64]: <function raw_input> 
0

使用raw_input()而不是raw_input

raw_input是一個函數,你必須調用函數來返回一個字符串,否則返回一個函數對象。

相關問題