Python提供了一个内置输入函数input()从键盘接受用户输入的内容。
当调用这个函数的时候程序等待用户输入,当用户输入了Enter时,程序恢复执行input()返回用户从键盘输入的字符串。
name = input("what is your name? ") print name
input()可以接受参数用来对用户的输入做提示。
注意input的返回值是string即使你输入的是数字。
num = input("input your lucky num:") print int(num) + 3
需要使用Python内置的数字类型转换函数把字符串转换为相应的类型的数字。
类似的转换函数还有float(),long()。
另一个输入函数是raw_input()
当你测试input()的时候,字符需要使用引号输入,比如上面的例子what is your name ? 'mfh' 输出mfh 这是OK的但是如果你输入mfh
则提示你NameError: name ‘xx’ is not defined
而raw_input()则不会出现这个提示。推荐优先使用raw_input()接收用户的键盘输入。
在python文档中对input()有说明: Equivalent to eval(raw_input(prompt)).
而eval(expression) The expression argument is parsed and evaluated as a Python expression.
就是说eval会执行expression所以当input()的接收到没有引用的字符时会把它当做一个名字来解析,而这个名字是没有定义的。