python 输入函数raw_input和input以及eval函数

参考:

《Machine Learning In Action》

http://www.tuicool.com/articles/BBVnQbq



###################################################3


raw_input函数:

函数raw_input是内建函数

help(raw_input)

python 输入函数raw_input和input以及eval函数_第1张图片


参数prompt:可选,为提示语句

函数功能:从标准输入中读入一个字符串


###############################################################


eval函数:

函数eval是内建函数

help(eval)

python 输入函数raw_input和input以及eval函数_第2张图片


功能:计算参数给的表达式,该表达式可以是字符串或表达式,可以用来作为dict,tuple,list和string的相互转换,也可当初计算器


a="[[1,2],[2,3]]"
b=eval(a)
python 输入函数raw_input和input以及eval函数_第3张图片


eval("1+3")
eval("3*3")
a=5/2
eval(a)
python 输入函数raw_input和input以及eval函数_第4张图片


############################################################


input函数:

函数input是内建函数:

help(input)

python 输入函数raw_input和input以及eval函数_第5张图片


它等同于:eval(raw_input(prompt))。

功能:计算输入的字符串


python 输入函数raw_input和input以及eval函数_第6张图片


但是,这个函数有一个缺陷:

如果用户恶意输入:

__import__('os').system('dir')

python 输入函数raw_input和input以及eval函数_第7张图片


当前目录将会全部显示

然后继续输入

open('文件名').read()

那么全部代码会被读取


故大多数情况下,输入函数均使用raw_input([prompt])函数


你可能感兴趣的:(python)