什么是输入
咱们在银行ATM机器前取钱时,肯定需要输入密码,对不?
那么怎样才能让程序知道咱们刚刚输入的是什么呢??
大家应该知道了,如果要完成ATM机取钱这件事情,需要先从键盘中输入一个数据,然后用一个变量来保存,是不是很好理解啊
1、python2的输入语句
在python2中有两种常见的输入语句,input()
和raw_input()
。
(1)input()函数
可以接收不同类型的参数,而且返回的是输入的类型。如,当你输入int类型数值,那么返回就是int型;其中字符型需要用单引号或双引号,否则,报错。
a.数值型输入
> a = input() > type(a) <type 'int'> > a > a = input() 1.23 > type(a) <type 'float'> > a 1.23
b.字符类型
如果输入的字符不加引号,就会报错
> r = input() hello Traceback (most recent call last): File "<pyshell#50>", line 1, in <module> r = input() File "<string>", line 1, in <module> NameError: name 'hello' is not defined
正确的字符输入
> r = input() 'hello' > r 'hello' > r = input() "hello" > r 'hello'
当然,可以对输入的字符加以说明
> name = input('please input name:') please input name:'Tom' > print 'Your name : ',name Your name : Tom
(2)raw_input()
函数raw_input()是把输入的数据全部看做字符类型。输入字符类型时,不需要加引号,否则,加的引号也会被看做字符。
> a = raw_input() > type(a) <type 'str'> > a '1' > a = raw_input() 'hello' > type(a) <type 'str'> > a "'hello'"
如果想要int类型数值时,可以通过调用相关函数转化。
> a = int(raw_input()) > type(a) <type 'int'> > a > a = float(raw_input()) 1.23 > type(a) <type 'float'> > a 1.23
在同一行中输入多个数值,可以有多种方式,这里给出调用map()
函数的转换方法。map使用方法请参考python-map的用法
> a, b = map(int, raw_input().split()) 20 > a > b > l = list(map(int, raw_input().split())) 2 3 4 > l [1, 2, 3, 4]
(3)input() 和raw_input()的区别
通过查看input()
帮助文档,知道input函数也是通过调用raw_input函数实现的,区别在于,input函数额外调用内联函数eval()。eval使用方法参考Python eval 函数妙用 (见下面)
> help(input) Help on built-in function input in module __builtin__: input(...) input([prompt]) -> value Equivalent to eval(raw_input(prompt)). > help(eval) Help on built-in function eval in module __builtin__: eval(...) eval(source[, globals[, locals]]) -> value Evaluate the source in the context of globals and locals. The source may be a string representing a Python expression or a code object as returned by compile(). The globals must be a dictionary and locals can be any mapping, defaulting to the current globals and locals. If only globals is given, locals defaults to it.
Python eval 函数妙用
eval
功能:将字符串str当成有效的表达式来求值并返回计算结果。
语法: eval(source[, globals[, locals]]) -> value
参数:
source:一个Python表达式或函数compile()返回的代码对象
globals:可选。必须是dictionary
locals:可选。任意map对象
实例展示:
可以把list,tuple,dict和string相互转化。 ################################################# 字符串转换成列表 >a = "[[1,2], [3,4], [5,6], [7,8], [9,0]]" >type(a) <type 'str'> > b = eval(a) > print b [[1, 2], [3, 4], [5, 6], [7, 8], [9, 0]] > type(b) <type 'list'> ################################################# 字符串转换成字典 > a = "{1: 'a', 2: 'b'}" > type(a) <type 'str'> > b = eval(a) > print b {1: 'a', 2: 'b'} > type(b) <type 'dict'> ################################################# 字符串转换成元组 > a = "([1,2], [3,4], [5,6], [7,8], (9,0))" > type(a) <type 'str'> > b = eval(a) > print b ([1, 2], [3, 4], [5, 6], [7, 8], (9, 0)) > type(b) <type 'tuple'>
2、Python3输入语句
python3中的输入语句只有input()
函数,没有raw_input();
而且python3中的input()
函数与python2中的raw_input()
的使用方法一样。
> a = input() 10 > type(a) <class 'str'> > a '10'
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
更新日志
- 群星.2002-恋爱物语情歌对唱精选2CD(引进版)【滚石】【WAV+CUE】
- 群星《闽南情24K德国HD金碟》2CD[WAV+CUE]
- 周传雄《恋人创世纪》环球唱片[WAV+CUE]
- 关淑怡-《真假情话K2HD》(日本压制)【WAV+CUE】
- 王菲 -《Faye Wong》雨果LPCD45 [WAV+分轨][1G]
- 陈百强《世纪10星·永恒篇》环球[WAV+CUE][1G]
- 陈奕迅《黑·白·灰》台湾版[WAV+CUE][400M]
- 张尕怂.2024-甘肃娃娃【FLAC分轨】
- 张惠妹.2011-A.MEI.ACOUSTIC.BEST.2CD【丰华】【WAV+CUE】
- ZEN.1996-珍惜所有【华纳】【WAV+CUE】
- 群星《环球国语元素》香港首版[WAV+CUE][1G]
- 周慧敏《玉女天后》原音母版1:1直刻[WAV+CUE][1G]
- 谭咏麟《20世纪中华歌坛名人百集珍藏版》[WAV+CUE][1G]
- 炉石传说40轮盘术最新卡组代码在哪找 标准40轮盘术卡组代码分享
- 炉石传说亲王贼怎么玩 2024亲王贼最新卡组代码分享