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的框架下的web app的详细教程
Apr 30 Python
详解Python中的日志模块logging
Jun 19 Python
对变量赋值的理解--Pyton中让两个值互换的实现方法
Nov 29 Python
Python学习之Anaconda的使用与配置方法
Jan 04 Python
python实现字符串中字符分类及个数统计
Sep 28 Python
python 中值滤波,椒盐去噪,图片增强实例
Dec 18 Python
Python 实现递归法解决迷宫问题的示例代码
Jan 12 Python
关于pytorch中全连接神经网络搭建两种模式详解
Jan 14 Python
Python实现井字棋小游戏
Mar 09 Python
python 引用传递和值传递详解(实参,形参)
Jun 05 Python
Python提取视频中图片的示例(按帧、按秒)
Oct 22 Python
Python中可变和不可变对象的深入讲解
Aug 02 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
ajax缓存问题解决途径
2006/12/06 PHP
php数组函数序列之each() - 获取数组当前内部指针所指向元素的键名和键值,并将指针移到下一位
2011/10/31 PHP
php精确的统计在线人数的方法
2015/10/21 PHP
php实现查询功能(数据访问)
2017/05/23 PHP
Laravel中validation验证 返回中文提示 全局设置的方法
2019/09/29 PHP
jquery事件机制扩展插件 jquery鼠标右键事件
2011/12/21 Javascript
javascript创建createXmlHttpRequest对象示例代码
2014/02/10 Javascript
JavaScript字符串对象slice方法入门实例(用于字符串截取)
2014/10/16 Javascript
javascript实现鼠标放上后下边对应内容变换的效果
2015/08/06 Javascript
JSONP原理及简单实现
2016/06/08 Javascript
vue.js加载新的内容(实例代码)
2017/06/01 Javascript
在mpvue框架中使用Vant WeappUI组件库的注意事项【推进】
2019/06/09 Javascript
javascript定时器的简单应用示例【控制方块移动】
2019/06/17 Javascript
vue data引入本地图片的两种方式小结
2019/11/13 Javascript
[02:34]DOTA2英雄基础教程 幽鬼
2014/01/02 DOTA
Python实现3行代码解简单的一元一次方程
2014/08/18 Python
TensorFlow中权重的随机初始化的方法
2018/02/11 Python
python如何派生内置不可变类型并修改实例化行为
2018/03/21 Python
详谈Numpy中数组重塑、合并与拆分方法
2018/04/17 Python
浅谈tensorflow中几个随机函数的用法
2018/07/27 Python
python批量修改图片尺寸,并保存指定路径的实现方法
2019/07/04 Python
python爬虫的一个常见简单js反爬详解
2019/07/09 Python
python实现两个一维列表合并成一个二维列表
2019/12/02 Python
北美三大旅游网站之一:Travelocity
2017/08/12 全球购物
英语专业毕业生自我鉴定
2013/11/09 职场文书
小学敬老月活动方案
2014/02/11 职场文书
留守儿童工作方案
2014/06/02 职场文书
人力资源职位说明书
2014/07/29 职场文书
2014学习优秀共产党员先进事迹思想汇报
2014/09/14 职场文书
学生打架检讨书
2014/10/20 职场文书
会计试用期自我评价
2015/03/10 职场文书
2015年大学迎新工作总结
2015/07/16 职场文书
2016秋季小学开学寄语
2015/12/03 职场文书
2016元旦主持人开场白
2015/12/03 职场文书
Python爬虫之爬取某文库文档数据
2021/04/21 Python
关于Numpy之repeat、tile的用法总结
2021/06/02 Python