您的位置:首页 > 其它

input() ; raw_input()

2016-02-03 20:16 330 查看
raw_input和input 均是 python 的内建函数
功能不尽相同

>>> raw_input_A = raw_input("raw_input: ")
raw_input: PythonTab.com
>>> print raw_input_A
PythonTab.com


>>> input_A = input("Input: ")
Input: PythonTab.com
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<string>", line 1, in <module>
NameError: name 'PythonTab' is not defined


>>> input_A = input("Input: ")
Input: "PythonTab.com"
>>> print input_A
PythonTab.com


这两个函数均能接收字符串
raw_input() 直接读取控制台的输入(任何类型的输入都可以接收)
input() 需要够读取一个合法的表达式 即输入字符串时必须用引号括起来

>>> raw_input_B = raw_input("raw_input: ")
raw_input: 2015
>>> type(raw_input_B)
<type 'str'>


>>> input_B = input("input: ")
input: 2015
>>> type(input_B)
<type 'int'>


raw_input() 将所有输入作为字符串看待
input() 在对待纯数字输入时具有自己的特性,它返回所输入的数字的类型( int, float )

查看python手册,得知:

input([prompt]) Equivalent to eval(raw_input(prompt))

input() 本质上还是使用 raw_input() 来实现的
可以将表达式作为 input() 的参数

不过在 Built-in Functions 里有一句话是这样写的:
Consider using the raw_input() function for general input from users

除非对 input() 有特别需要,否则一般情况下推荐使用 raw_input()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: