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列表去重的二种方法
Feb 14 Python
使用Python脚本来获取Cisco设备信息的示例
May 04 Python
简单学习Python多进程Multiprocessing
Aug 29 Python
Python 模拟员工信息数据库操作的实例
Oct 23 Python
python 动态加载的实现方法
Dec 22 Python
简单了解python模块概念
Jan 11 Python
Python在Matplotlib图中显示中文字体的操作方法
Jul 29 Python
python和c语言哪个更适合初学者
Jun 22 Python
python中判断文件结束符的具体方法
Aug 04 Python
Django vue前后端分离整合过程解析
Nov 20 Python
python unichr函数知识点总结
Dec 16 Python
解决Pytorch中关于model.eval的问题
May 22 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
php获得当前的脚本网址
2007/12/10 PHP
PHP开启gzip页面压缩实例代码
2010/03/11 PHP
php获取一个变量的名字的方法
2014/09/05 PHP
php中in_array函数用法分析
2014/11/15 PHP
PHP程序员简单的开展服务治理架构操作详解(二)
2020/05/14 PHP
自定义一个jquery插件[鼠标悬浮时候 出现说明label]
2011/06/27 Javascript
JavaScript Scoping and Hoisting 翻译
2012/07/03 Javascript
文本有关的样式和jQuery求对象的高宽问题分别说明
2013/08/30 Javascript
使用javascript做的一个随机点名程序
2014/02/13 Javascript
JS结合bootstrap实现基本的增删改查功能
2016/07/22 Javascript
原生js实现轮播图
2017/02/27 Javascript
理解 Node.js 事件驱动机制的原理
2017/08/16 Javascript
layui select 禁止点击的实现方法
2019/09/05 Javascript
[42:50]NB vs VP 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python利用lxml读写xml格式的文件
2017/08/10 Python
Python 3.6 性能测试框架Locust安装及使用方法(详解)
2017/10/11 Python
Centos 升级到python3后pip 无法使用的解决方法
2018/06/12 Python
Django+JS 实现点击头像即可更改头像的方法示例
2018/12/26 Python
Python3常见函数range()用法详解
2019/12/30 Python
解决pyinstaller 打包exe文件太大,用pipenv 缩小exe的问题
2020/07/13 Python
Python selenium键盘鼠标事件实现过程详解
2020/07/28 Python
AmazeUI 手机版页面的顶部导航条Header与侧边导航栏offCanvas的示例代码
2020/08/19 HTML / CSS
美国婴儿和儿童家具网上商店:ABaby.com
2018/07/02 全球购物
Rowdy Gentleman服装和配饰:美好时光
2019/09/24 全球购物
使用索引有什么好处
2016/07/27 面试题
毕业生自我鉴定
2013/11/05 职场文书
仓库门卫岗位职责
2013/12/22 职场文书
商场消防演习方案
2014/02/12 职场文书
室内设计专业毕业生求职信
2014/05/02 职场文书
党的群众路线教育实践活动个人整改措施材料
2014/11/04 职场文书
实习科室评语
2015/01/04 职场文书
二手车转让协议书
2015/01/29 职场文书
资深HR教你写好简历中的自我评价
2019/05/07 职场文书
30岁前绝不能错过的10本书
2019/08/08 职场文书
导游词之长城八达岭
2019/09/24 职场文书
一文搞清楚MySQL count(*)、count(1)、count(col)区别
2022/03/03 MySQL