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