我正在尝试一个简单的Hello世界,这是我的代码 -
def hello(name=''):
if len(name) == 0 :
return "Hello, World!"
else :
return "Hello, %s!" %(name)
my_name = raw_input()
x = hello(my_name)
print (x)
如果我使用raw_input,此代码可以正常工作,但如果我使用输入,则会出错。 新的python不支持raw_input。 我也想知道为什么我在我的函数中定义参数如下 -
def hello(name='')
为什么我需要使用''名称后
我真的很困惑,请帮忙。如果您有任何改进我的计划的建议,我们表示赞赏
答案 0 :(得分:0)
如果您使用input
传递字符串,则还必须提及双引号"
,例如"My Name"
而在raw_input
中,默认情况下,所有输入的值都被视为字符串
<强>解释强>
# Example of "input()"
>>> my_name = input("Enter Name: ")
Enter Name: "My Name"
# Passing `"` with the input, else it will raise NameError Exception
>>> my_name
'My Name' <--- value is string
# Example of "raw_input()"
>>> my_name = raw_input("Enter Name: ")
Enter Name: My Name
# Not passing any `"`
>>> my_name
'My name' <--- still value is string