浅谈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基础教程之数字处理(math)模块详解
Mar 25 Python
Python使用sftp实现上传和下载功能(实例代码)
Mar 14 Python
python中requests小技巧
May 10 Python
python记录程序运行时间的三种方法
Jul 14 Python
Python编程把二叉树打印成多行代码
Jan 04 Python
Python基于ThreadingTCPServer创建多线程代理的方法示例
Jan 11 Python
django静态文件加载的方法
May 20 Python
python库matplotlib绘制坐标图
Oct 18 Python
python pygame实现滚动横版射击游戏城市之战
Nov 25 Python
python中对二维列表中一维列表的调用方法
Jun 07 Python
基于python实现ROC曲线绘制广场解析
Jun 28 Python
Python 串口通信的实现
Sep 29 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
PHP类继承 extends使用介绍
2014/01/14 PHP
php设置允许大文件上传示例代码
2014/03/10 PHP
php实现获取文章内容第一张图片的方法
2014/11/04 PHP
php实现不通过扩展名准确判断文件类型的方法【finfo_file方法与二进制流】
2017/04/18 PHP
PHP简单验证码功能机制实例详解
2019/03/27 PHP
PHP常量及变量区别原理详解
2020/08/14 PHP
JavaScript 上万关键字瞬间匹配实现代码
2013/07/07 Javascript
基于jquery实现一张图片点击鼠标放大再点缩小
2013/09/29 Javascript
全系IE支持Bootstrap的解决方法
2015/10/19 Javascript
js上下视差滚动简单实现代码
2017/03/07 Javascript
vue proxyTable 接口跨域请求调试的示例
2017/09/12 Javascript
vue resource post请求时遇到的坑
2017/10/19 Javascript
node.js博客项目开发手记
2018/03/16 Javascript
layui插件表单验证提交触发提交的例子
2019/09/09 Javascript
js实现简单的秒表
2020/01/16 Javascript
JavaScript中使用Spread运算符的八种方法总结
2020/06/18 Javascript
Python基类函数的重载与调用实例分析
2015/01/12 Python
Python实现二叉树结构与进行二叉树遍历的方法详解
2016/05/24 Python
详谈Pandas中iloc和loc以及ix的区别
2018/06/08 Python
Numpy 中的矩阵求逆实例
2019/08/26 Python
Python venv虚拟环境配置过程解析
2020/07/08 Python
python 自定义异常和主动抛出异常(raise)的操作
2020/12/11 Python
python+selenium自动化实战携带cookies模拟登陆微博
2021/01/19 Python
安装不同版本的tensorflow与models方法实现
2021/02/20 Python
使用HTML5和CSS3表单验证功能
2017/05/05 HTML / CSS
css3的focus-within选择器的使用
2020/05/11 HTML / CSS
PUMA官方商城:世界领先的运动品牌之一
2016/11/16 全球购物
一组SQL面试题
2016/02/15 面试题
元宵节晚会主持人串词
2014/03/25 职场文书
松材线虫病防治方案
2014/06/15 职场文书
慰问信模板
2015/02/14 职场文书
公司禁烟通知
2015/04/23 职场文书
采购部2015年度工作总结
2015/07/24 职场文书
课程设计感想范文
2015/08/11 职场文书
PHP中国际化的字符串排序和比较对象详解
2021/08/23 PHP
英国数字版游戏销量周榜公布 《小缇娜的奇幻之地》登顶
2022/04/03 其他游戏