浅谈python3中input输入的使用


Posted in Python onAugust 02, 2019

今天谈一下关于python中input的一些基本用法(写给新手入门之用,故只谈比较实用的部分)。

首先,我们可以看一下官方文档给我们的解释(在python的shell中输入命令即可):

浅谈python3中input输入的使用

上面的英文说的是什么呢?大家有兴趣的可以自己在网上翻译一下,大致说的就是input这个函数,第一个参数是提示语,它默认是空的。在我们使用input的时候,会从标准输入中读取一个string,即字符串(请注意,这里很重要,下面我们会继续说),对于用户输入的换行是不会读入的,因为我们都知道input是以换行作为输入结束的标志的。

下面就以例子的形式来展示input的“内涵”:

(1)从下图可以看出,input从标准输入中为我们拿到的值是一个字符串,那么也就是说,无论我们的初衷是得到一个整数、小数或者其他的值,input都会在我们的输入的值的左右两边加上一个引号(“”),也就是说对于我们拿到的东西,我们使用做后期的加工的。

浅谈python3中input输入的使用

(2)我们来得到一个整数,很简单,只需要使用强制类型转换就可以了:

浅谈python3中input输入的使用

(3)刚刚在(1)中说到了对于我们的输入,无论我们的初衷是什么,都会被加上一对引号,所以你想到了什么呢?那当然是把引号去掉了,这样的话我们是不是就会得到原来的东西了呢?请注意,这里我会通过两个例子展示(eval请参考另一篇文章点击打开链接)。

浅谈python3中input输入的使用

上面的这个例子中,我们想得到的是一个整数,yes,这个时候你用eval出去input“添加”的引号是完全正确的。其实,当我们输入的时候,eval帮我们去除了引号后,就相当于执行了a=234,显然这是整数赋值。而如果没有加eval,只是单纯的a=input("请输入:"),显然,我们得到的是a="234"。

浅谈python3中input输入的使用

这个例子,我希望展示eval的本质给大家看。这个错误说的是,“wer”这个名字没有被定义,那么请注意,这个时候的“wer”被编译器理解成了什么呢?对于“wer”,编译器会在自己的系统库中寻找它,看是否有“wer”的定义,如果没有找到,那么不好意思,系统只能将它理解为你在使用一个未定义的变量,也就是说,“wer”被理解成了变量的名字。对于上面的234为什么不会报这样的错误呢?那是因为系统在自身的库中可以知道234是一个整数,那么自然就不会报错了。下面在给一个例子,进一步加深理解。

浅谈python3中input输入的使用

看到这个例子,我想先让大家回忆一下我们,使用过的赋值语句:a,b=34,3。对于这个语句,大家在类比到上图中的eval的输入,在输入的时候,我输入的是“34,3”,那么,在eval会去除input“强加”的引号的时候,是不是等价于“a,b=34,3”这个赋值语句!所以,在这里我想通过这两个例子展现一下eval的本质,那就是"单纯"的替我们去出引号,大家可以当做eval执行后将引号里面的内容原原本本地写回了代码的原来位置,那么这一切是不是就可以看得很明白了。

请参考上面提到的eval的文章,与此处进行结合,进行互补。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python计算程序运行时间的方法
Dec 13 Python
Python中使用PIL库实现图片高斯模糊实例
Feb 08 Python
利用Python和OpenCV库将URL转换为OpenCV格式的方法
Mar 27 Python
使用Python的Twisted框架编写简单的网络客户端
Apr 16 Python
介绍Python中的文档测试模块
Apr 28 Python
如何将python中的List转化成dictionary
Aug 15 Python
Python编程学习之如何判断3个数的大小
Aug 07 Python
python模块和包的应用BASE_PATH使用解析
Dec 14 Python
python 图像的离散傅立叶变换实例
Jan 02 Python
Python任务自动化工具tox使用教程
Mar 17 Python
PyTorch安装与基本使用详解
Aug 31 Python
pytorch 预训练模型读取修改相关参数的填坑问题
Jun 05 Python
Pycharm连接远程服务器并实现远程调试的实现
Aug 02 #Python
在PyCharm的 Terminal(终端)切换Python版本的方法
Aug 02 #Python
Django单元测试工具test client使用详解
Aug 02 #Python
Django使用unittest模块进行单元测试过程解析
Aug 02 #Python
pip安装python库的方法总结
Aug 02 #Python
python twilio模块实现发送手机短信功能
Aug 02 #Python
python代码 FTP备份交换机配置脚本实例解析
Aug 01 #Python
You might like
javascript 文章截取部分无损html显示实现代码
2010/05/04 Javascript
避免 showModalDialog 弹出新窗体的原因分析
2010/05/31 Javascript
jquery使用ColorBox弹出图片组浏览层实例演示
2013/03/14 Javascript
浅谈jQuery中height与width
2015/07/06 Javascript
jquery实现带缩略图的可定制高度画廊效果(5种)
2015/08/28 Javascript
jQuery实现可拖拽的许愿墙效果【附demo源码下载】
2016/09/14 Javascript
JS/jQuery判断DOM节点是否存在的简单方法
2016/11/24 Javascript
JavaScript DOM元素常见操作详解【添加、删除、修改等】
2018/05/09 Javascript
JS数组实现分类统计实例代码
2018/09/30 Javascript
如何使用CSS3和JQuery easing 插件制作绚丽菜单
2019/06/18 jQuery
json解析大全 双引号、键值对不在一起的情况
2019/12/06 Javascript
angular中的post请求处理示例详解
2020/06/30 Javascript
uin-app+mockjs实现本地数据模拟
2020/08/26 Javascript
解决VUE项目使用Element-ui 下拉组件的验证失效问题
2020/11/07 Javascript
JavaScript中常用的3种弹出提示框(alert、confirm、prompt)
2020/11/10 Javascript
Python使用Turtle模块绘制五星红旗代码示例
2017/12/11 Python
python生成圆形图片的方法
2020/03/25 Python
使用Python微信库itchat获得好友和群组已撤回的消息
2018/06/24 Python
Python找出微信上删除你好友的人脚本写法
2018/11/01 Python
使用Python做定时任务及时了解互联网动态
2019/05/15 Python
linux下python中文乱码解决方案详解
2019/08/28 Python
Tensorflow的常用矩阵生成方式
2020/01/04 Python
详解python实现可视化的MD5、sha256哈希加密小工具
2020/09/14 Python
python hmac模块验证客户端的合法性
2020/11/07 Python
解决pytorch 模型复制的一些问题
2021/03/03 Python
CSS3 实现的缩略图悬停效果
2020/12/09 HTML / CSS
Sofft鞋官网:世界知名鞋类品牌
2017/03/28 全球购物
西班牙美妆电商:Perfume’s Club(有中文站)
2018/08/08 全球购物
C#公司笔试题
2014/03/28 面试题
秋季运动会加油稿200字
2014/01/11 职场文书
教研活动总结
2014/04/28 职场文书
美德少年事迹材料500字
2014/08/19 职场文书
大学生党校培训心得体会
2014/09/11 职场文书
2014年英语教学工作总结
2014/12/17 职场文书
使用HBuilder制作一个简单的HTML5网页
2022/07/07 HTML / CSS
JavaScript实现音乐播放器
2022/08/14 Javascript