输入和输出
输出
1、输出字符串
用print加上字符串,就可以向屏幕上输出指定的文字。比如输出'hello, world',用代码实现如下:
1
2
3
<code>>>> </code>
<code>print</code>
<code> </code><code>'hello, world'</code>
print语句也可以跟上多个字符串,用逗号“,”隔开,就可以连成一串输出:
<code>>>> </code><code>print</code> <code>'The quick brown fox'</code><code>, </code><code>'jumps over'</code><code>, </code><code>'the lazy dog'</code>
<code>The quick brown fox jumps over the lazy dog</code>
注:print会依次打印每个字符串,遇到逗号“,”会输出一个空格( ),因此,输出的字符串是这样拼起来的
>>> print 'The quick brown fox', 'jumps over', 'the lazy dog'
The quick brown fox jumps over the lazy dog
2、打印整数或计算
print也可以打印整数,或者计算结果:
4
<code>>>> </code><code>print</code> <code>500</code>
<code>500</code>
<code>>>> </code><code>print</code> <code>300</code> <code>+</code> <code>200</code>
因此,我们可以把计算100 + 200的结果打印得更漂亮一点:
<code>>>> </code><code>print</code> <code>'100 + 200 ='</code><code>, </code><code>100</code> <code>+</code> <code>200</code>
<code>100</code> <code>+</code> <code>200</code> <code>=</code> <code>300</code>
注:对于100 + 200,Python解释器自动计算出结果300,但是,'100 + 200 ='是字符串而非数学公式,Python把它视为字符串,请自行解释上述打印结果。
3、脚本程序打印输出
#程序内容
<code>$ cat hello.py </code>
<code>#!/usr/bin/python</code>
<code>print</code> <code>'Hello Word!'</code>
#运行程序
<code>$ python hello.py </code>
<code>Hello Word!</code>
输入
1、交互输入
(1)现在,你已经可以用print输出你想要的结果了。但是,如果要让用户交互怎么办?Python提供了一个raw_input,比如输入用户的名字:
<code>>>> </code><code>print</code> <code>raw_input</code><code>(</code><code>'name:'</code><code>)</code>
<code>name:xiaodangjia</code>
<code>xiaodangjia</code>
(2)可以让用户输入字符串,并存放到一个变量里。
当你输入name = raw_input()并按下回车后,Python交互式命令行就在等待你的输入了。这时,你可以输入任意字符,然后按回车后完成输入。
<code>>>> name </code><code>=</code> <code>raw_input</code><code>()</code>
(3)输入完成后,不会有任何提示,Python交互式命令行又回到>>>状态了。那我们刚才输入的内容到哪去了?答案是存放到name变量里了。可以直接输入name查看变量内容:
<code>>>> name</code>
<code>'xiaodangjia'</code>
2、输入输出
(1)在计算机程序中,变量不仅可以为整数或浮点数,还可以是字符串,因此,name作为一个变量就是一个字符串。
要打印出name变量的内容,除了直接写name然后按回车外,还可以用print语句:
<code>>>> </code><code>print</code> <code>name</code>
(2)有了输入和输出,我们就可以把上次打印'hello, world'的程序改成有点意义的程序了:
<code>>>> </code><code>print</code> <code>'hello,'</code><code>,name</code>
<code>hello, xiaodangjia</code>
3、脚本程序输入输出
(1)运行下面的程序,第一行代码会让用户输入任意字符作为自己的名字,然后存入name变量中;第二行代码会根据用户的名字向用户说hello,比如输入Xiaodangjia:
<code>name </code><code>=</code> <code>raw_input</code><code>(</code><code>'Please enter your name:'</code><code>)</code>
<code>print</code> <code>'Hello,'</code><code>,name</code>
<code>Please enter your name:xiaodangjia</code>
<code>Hello, xiaodangjia</code>
(2)程序一运行,会首先打印出Please enter your name:,这样,用户就可以根据提示,输入名字后,得到hello, xxx的输出,每次运行该程序,根据用户输入的不同,输出结果也会不同。
<code>Enter your name:solin</code>
<code>Hello, solin</code>
Python 中文编码
1、程序中出现中文时报错
(1)报错信息
输出中文字符"你好,世界"就有可能会碰到中文编码问题,是因为Python 文件中如果未指定编码,在执行过程会出现报错:
<code>#程序内容</code>
<code>print</code> <code>'你好,世界!'</code>
#执行程序,报错信息
<code> </code><code>File </code><code>"hello.py"</code><code>, line 2</code>
<code>SyntaxError: Non-ASCII character </code><code>'\xe4'</code> <code>in</code> <code>file</code> <code>hello.py on line 2, but no encoding declared; see http:</code><code>//python</code><code>.org</code><code>/dev/peps/pep-0263/</code> <code>for</code> <code>details</code>
(2)错误分析
Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。
解决方法为只要在文件开头加入 # -*- coding: UTF-8 -*- 或者 #coding=utf-8 就行了。
2、添加编码格式,正常输出
(1)添加编码格式后,执行程序
<code># -*- coding: UTF-8 -*-</code>
<code>print</code> <code>'你好,世界!'</code><code>;</code>
#执行程序,输出结果为
<code>你好,世界!</code>
(2)若代码中包含中文,就需要在头部指定编码。
本文转自 运维小当家 51CTO博客,原文链接:http://blog.51cto.com/solin/1946188,如需转载请自行联系原作者