Python最基本的输入输出详解


Posted in Python onApril 25, 2015

输出

用print加上字符串,就可以向屏幕上输出指定的文字。比如输出'hello, world',用代码实现如下:

>>> print 'hello, world'

print语句也可以跟上多个字符串,用逗号“,”隔开,就可以连成一串输出:

>>> print 'The quick brown fox', 'jumps over', 'the lazy dog'
The quick brown fox jumps over the lazy dog

print会依次打印每个字符串,遇到逗号“,”会输出一个空格,因此,输出的字符串是这样拼起来的:

print-howto

print也可以打印整数,或者计算结果:

>>> print 300
300
>>> print 100 + 200
300

因此,我们可以把计算100 + 200的结果打印得更漂亮一点:

>>> print '100 + 200 =', 100 + 200
100 + 200 = 300

注意,对于100 + 200,Python解释器自动计算出结果300,但是,'100 + 200 ='是字符串而非数学公式,Python把它视为字符串,请自行解释上述打印结果。
输入

现在,你已经可以用print输出你想要的结果了。但是,如果要让用户从电脑输入一些字符怎么办?Python提供了一个raw_input,可以让用户输入字符串,并存放到一个变量里。比如输入用户的名字:

>>> name = raw_input()
Michael

当你输入name = raw_input()并按下回车后,Python交互式命令行就在等待你的输入了。这时,你可以输入任意字符,然后按回车后完成输入。

输入完成后,不会有任何提示,Python交互式命令行又回到>>>状态了。那我们刚才输入的内容到哪去了?答案是存放到name变量里了。可以直接输入name查看变量内容:

>>> name
'Michael'

什么是变量?请回忆初中数学所学的代数基础知识:

设正方形的边长为a,则正方形的面积为a x a。把边长a看做一个变量,我们就可以根据a的值计算正方形的面积,比如:

若a=2,则面积为a x a = 2 x 2 = 4;

若a=3.5,则面积为a x a = 3.5 x 3.5 = 12.25。

在计算机程序中,变量不仅可以为整数或浮点数,还可以是字符串,因此,name作为一个变量就是一个字符串。

要打印出name变量的内容,除了直接写name然后按回车外,还可以用print语句:

>>> print name
Michael

有了输入和输出,我们就可以把上次打印'hello, world'的程序改成有点意义的程序了:

name = raw_input()
print 'hello,', name

运行上面的程序,第一行代码会让用户输入任意字符作为自己的名字,然后存入name变量中;第二行代码会根据用户的名字向用户说hello,比如输入Michael:

C:\Workspace> python hello.py
Michael
hello, Michael

但是程序运行的时候,没有任何提示信息告诉用户:“嘿,赶紧输入你的名字”,这样显得很不友好。幸好,raw_input可以让你显示一个字符串来提示用户,于是我们把代码改成:

再次运行这个程序,你会发现,程序一运行,会首先打印出please enter your name:,这样,用户就可以根据提示,输入名字后,得到hello, xxx的输出:

C:\Workspace> python hello.py
please enter your name: Michael
hello, Michael

每次运行该程序,根据用户输入的不同,输出结果也会不同。

在命令行下,输入和输出就是这么简单。
小结

任何计算机程序都是为了执行一个特定的任务,有了输入,用户才能告诉计算机程序所需的信息,有了输出,程序运行后才能告诉用户任务的结果。

输入是Input,输出是Output,因此,我们把输入输出统称为Input/Output,或者简写为IO。

raw_input和print是在命令行下面最基本的输入和输出,但是,用户也可以通过其他更高级的图形界面完成输入和输出,比如,在网页上的一个文本框输入自己的名字,点击“确定”后在网页上看到输出信息。

 

Python 相关文章推荐
python制作企业邮箱的爆破脚本
Oct 05 Python
Python2.7下安装Scrapy框架步骤教程
Dec 22 Python
使用python爬虫实现网络股票信息爬取的demo
Jan 05 Python
分享一下Python数据分析常用的8款工具
Apr 29 Python
python实现两个dict合并与计算操作示例
Jul 01 Python
Python考拉兹猜想输出序列代码实践
Jul 05 Python
python爬虫神器Pyppeteer入门及使用
Jul 13 Python
python异步编程 使用yield from过程解析
Sep 25 Python
PIL.Image.open和cv2.imread的比较与相互转换的方法
Jun 03 Python
python爬虫爬取网页数据并解析数据
Sep 18 Python
教你如何用python操作摄像头以及对视频流的处理
Oct 12 Python
关于Python中进度条的六个实用技巧分享
Apr 05 Python
在GitHub Pages上使用Pelican搭建博客的教程
Apr 25 #Python
介绍Python的Django框架中的静态资源管理器django-pipeline
Apr 25 #Python
在IIS服务器上以CGI方式运行Python脚本的教程
Apr 25 #Python
研究Python的ORM框架中的SQLAlchemy库的映射关系
Apr 25 #Python
Python的ORM框架中SQLAlchemy库的查询操作的教程
Apr 25 #Python
Python实现单词拼写检查
Apr 25 #Python
在Debian下配置Python+Django+Nginx+uWSGI+MySQL的教程
Apr 25 #Python
You might like
VFP与其他应用程序的集成
2006/10/09 PHP
PHP一些常用的正则表达式字符的一些转换
2008/07/29 PHP
PHP和Mysql中转UTF8编码问题汇总
2015/10/10 PHP
smarty简单应用实例
2015/11/03 PHP
PHP下使用mysqli的函数连接mysql出现warning: mysqli::real_connect(): (hy000/1040): ...
2016/02/14 PHP
Yii2使用swiftmailer发送邮件的方法
2016/05/03 PHP
LaravelS通过Swoole加速Laravel/Lumen详解
2018/03/02 PHP
javascript 仿QQ滑动菜单效果代码
2010/09/03 Javascript
JavaScript中将一个值转换为字符串的方法分析[译]
2012/09/21 Javascript
解析javascript系统错误:-1072896658的解决办法
2013/07/08 Javascript
JavaScript作用域链示例分享
2014/05/27 Javascript
NodeJS Web应用监听sock文件实例
2015/02/18 NodeJs
JavaScript限定图片显示大小的方法
2015/03/11 Javascript
js/jquery判断浏览器类型的方法小结
2015/05/12 Javascript
AngularJs  unit-testing(单元测试)详解
2016/09/02 Javascript
概述如何实现一个简单的浏览器端js模块加载器
2016/12/07 Javascript
JavaScript模块化之使用requireJS按需加载
2017/04/12 Javascript
Angular父组件调用子组件的方法
2018/04/02 Javascript
VUE-Table上绑定Input通过render实现双向绑定数据的示例
2018/08/27 Javascript
vue-cli中安装方法(图文详细步骤)
2018/12/12 Javascript
Vue 实现点击空白处隐藏某节点的三种方式(指令、普通、遮罩)
2019/10/23 Javascript
[08:47]2018国际邀请赛 OG战队举杯时刻
2018/08/29 DOTA
python关闭windows进程的方法
2015/04/18 Python
Python实现读取字符串按列分配后按行输出示例
2018/04/17 Python
python使用pipeline批量读写redis的方法
2019/02/18 Python
pytorch中的inference使用实例
2020/02/20 Python
Python + selenium + crontab实现每日定时自动打卡功能
2020/03/31 Python
python openCV实现摄像头获取人脸图片
2020/08/20 Python
Python 按比例获取样本数据或执行任务的实现代码
2020/12/03 Python
CSS3实现精美横向滚动菜单按钮
2017/04/14 HTML / CSS
出门问问全球官方商城:Tichome音箱和TicWatch智能手表
2017/12/02 全球购物
KOHLER科勒美国官网:国际著名卫浴橱柜领先品牌
2020/06/27 全球购物
党支部活动策划方案
2014/08/18 职场文书
党的群众路线教育实践活动个人对照检查材料(乡镇)
2014/11/05 职场文书
CSS3实现的文字弹出特效
2021/04/16 HTML / CSS
详解JAVA的控制语句
2021/11/11 Java/Android