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 09 Python
举例讲解Python设计模式编程的代理模式与抽象工厂模式
Jan 16 Python
python利用正则表达式提取字符串
Dec 08 Python
Python编程之Re模块下的函数介绍
Oct 28 Python
Python cookbook(数据结构与算法)找出序列中出现次数最多的元素算法示例
Mar 15 Python
详解Python使用Plotly绘图工具,绘制甘特图
Apr 02 Python
NumPy 基本切片和索引的具体使用方法
Apr 24 Python
pyqt5 tablewidget 利用线程动态刷新数据的方法
Jun 17 Python
flask应用部署到服务器的方法
Jul 12 Python
通过实例简单了解Python中yield的作用
Dec 11 Python
pandas将list数据拆分成行或列的实现
Dec 13 Python
Pytorch 使用tensor特定条件判断索引
Apr 08 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 缓存实现代码及详细注释
2010/05/16 PHP
php一维二维数组键排序方法实例总结
2014/11/13 PHP
php 如何禁用eval() 函数实例详解
2016/12/01 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
Laravel框架实现定时发布任务的方法
2018/08/16 PHP
PHP htmlspecialchars_decode()函数用法讲解
2019/03/01 PHP
php7性能提升的原因详解
2019/10/13 PHP
[原创]图片分页查看
2006/08/28 Javascript
javascript基本语法分析说明
2008/06/15 Javascript
js读取本地excel文档数据的代码
2010/11/11 Javascript
js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)
2013/01/29 Javascript
Javascript倒计时页面跳转实例小结
2013/09/11 Javascript
基于javascript简单实现对身份证校验
2021/01/25 Javascript
浅谈AngularJs指令之scope属性详解
2016/10/24 Javascript
浅析JavaScript的几种Math函数,random(),ceil(),round(),floor()
2016/12/22 Javascript
canvas仿iwatch时钟效果
2017/03/06 Javascript
iOS + node.js使用Socket.IO框架进行实时通信示例
2017/04/14 Javascript
巧用weui.topTips验证数据的实例
2017/04/17 Javascript
微信小程序 wx.request方法的异步封装实例详解
2017/05/18 Javascript
ES6 javascript中class类的get与set用法实例分析
2017/10/30 Javascript
jquery实现吸顶导航效果
2020/01/08 jQuery
python 合并文件的具体实例
2013/08/08 Python
使用Python操作Elasticsearch数据索引的教程
2015/04/08 Python
Python装饰器知识点补充
2018/05/28 Python
python并发和异步编程实例
2018/11/15 Python
春节到了 教你使用python来抢票回家
2020/01/06 Python
解决Pycharm中恢复被exclude的项目问题(pycharm source root)
2020/02/14 Python
瑞典度假品牌:OAS
2019/05/28 全球购物
数据库的约束含义
2012/09/09 面试题
什么时候用assert
2015/05/08 面试题
技校个人求职信范文
2014/01/25 职场文书
2015年安全生产责任书
2015/01/30 职场文书
3.15消费者权益日活动总结
2015/02/09 职场文书
房地产公司财务总监岗位职责
2015/04/03 职场文书
七年级作文(600字3篇)
2019/09/24 职场文书
Python中字符串对象语法分享
2022/02/24 Python