天天看点

003-输入和输出

输入和输出

输出

1、输出字符串

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

1

2

3

<code>&gt;&gt;&gt; </code>

<code>print</code>

<code> </code><code>'hello, world'</code>

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

<code>&gt;&gt;&gt; </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会依次打印每个字符串,遇到逗号“,”会输出一个空格( ),因此,输出的字符串是这样拼起来的

&gt;&gt;&gt; print 'The quick brown fox', 'jumps over', 'the lazy dog'

The quick brown fox jumps over the lazy dog

2、打印整数或计算

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

4

<code>&gt;&gt;&gt; </code><code>print</code> <code>500</code>

<code>500</code>

<code>&gt;&gt;&gt; </code><code>print</code> <code>300</code> <code>+</code> <code>200</code>

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

<code>&gt;&gt;&gt; </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>&gt;&gt;&gt; </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>&gt;&gt;&gt; name </code><code>=</code> <code>raw_input</code><code>()</code>

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

<code>&gt;&gt;&gt; name</code>

<code>'xiaodangjia'</code>

2、输入输出

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

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

<code>&gt;&gt;&gt; </code><code>print</code> <code>name</code>

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

<code>&gt;&gt;&gt; </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,如需转载请自行联系原作者