python2 与 pyhton3的输入语句写法小结


Posted in Python onSeptember 10, 2018

什么是输入

咱们在银行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'

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python最基本的数据类型以及对元组的介绍
Apr 14 Python
Python的time模块中的常用方法整理
Jun 18 Python
PyCharm使用教程之搭建Python开发环境
Jun 07 Python
Python3利用SMTP协议发送E-mail电子邮件的方法
Sep 30 Python
Python实现将一个正整数分解质因数的方法分析
Dec 14 Python
NumPy.npy与pandas DataFrame的实例讲解
Jul 09 Python
浅谈python 导入模块和解决文件句柄找不到问题
Dec 15 Python
python 利用文件锁单例执行脚本的方法
Feb 19 Python
Python面向对象程序设计之类的定义与继承简单示例
Mar 18 Python
python3.7将代码打包成exe程序并添加图标的方法
Oct 11 Python
使用python 将图片复制到系统剪贴中
Dec 13 Python
Python猫眼电影最近上映的电影票房信息
Sep 18 Python
django DRF图片路径问题的解决方法
Sep 10 #Python
详解python中Numpy的属性与创建矩阵
Sep 10 #Python
tensorflow使用神经网络实现mnist分类
Sep 08 #Python
Python unittest单元测试框架总结
Sep 08 #Python
tensorflow实现加载mnist数据集
Sep 08 #Python
使用tensorflow实现线性回归
Sep 08 #Python
Python  unittest单元测试框架的使用
Sep 08 #Python
You might like
基于empty函数的输出详解
2013/06/17 PHP
php实现可以设置中奖概率的抽奖程序代码分享
2014/01/19 PHP
php实现查询功能(数据访问)
2017/05/23 PHP
PHP实现的Redis多库选择功能单例类
2017/07/27 PHP
Laravel框架生命周期与原理分析
2018/06/12 PHP
laravel框架之数据库查出来的对象实现转化为数组
2019/10/23 PHP
JavaScript实现快速排序(自已编写)
2012/12/19 Javascript
Extjs优化(一)删除冗余代码提高运行速度
2013/04/15 Javascript
javascript对象的使用和属性操作示例详解
2014/03/02 Javascript
JQuery动态添加和删除表格行的方法
2015/03/09 Javascript
详解AngularJS中的作用域
2015/06/17 Javascript
js贪吃蛇游戏实现思路和源码
2016/04/14 Javascript
js调用webservice构造SOAP进行身份验证
2016/04/27 Javascript
微信禁止下拉查看URL的处理方法
2017/09/28 Javascript
解决koa2 ctx.render is not a function报错问题
2018/08/07 Javascript
原生js实现移动端Touch轮播图的方法步骤
2019/01/03 Javascript
微信小程序实现发送模板消息功能示例【通过openid推送消息给用户】
2019/05/05 Javascript
python检查序列seq是否含有aset中项的方法
2015/06/30 Python
Python竟能画这么漂亮的花,帅呆了(代码分享)
2017/11/15 Python
python实现图像识别功能
2018/01/29 Python
利用Python如何实现数据驱动的接口自动化测试
2018/05/11 Python
Python操作远程服务器 paramiko模块详细介绍
2019/08/07 Python
PyCharm导入python项目并配置虚拟环境的教程详解
2019/10/13 Python
python十进制转二进制的详解
2020/02/07 Python
jupyter note 实现将数据保存为word
2020/04/14 Python
用 Python 制作地球仪的方法
2020/04/24 Python
纯CSS3实现给头像加个光芒四射且旋转的背景动画效果
2014/05/07 HTML / CSS
Html5移动端弹幕动画实现示例代码
2018/08/27 HTML / CSS
美国创意礼品网站:UncommonGoods
2017/02/03 全球购物
驾驶员岗位职责
2014/01/29 职场文书
土木工程专业本科生求职信
2014/10/01 职场文书
工作失误检讨书(3篇)
2014/10/11 职场文书
家电创业计划书
2019/08/05 职场文书
python自然语言处理之字典树知识总结
2021/04/25 Python
python中的plt.cm.Paired用法说明
2021/05/31 Python
深入讲解数据库中Decimal类型的使用以及实现方法
2022/02/15 MySQL