首页 > 代码库 > Python核心编程(第二版) 第二章习题答案 未完待续

Python核心编程(第二版) 第二章习题答案 未完待续

2-2.程序输出。阅读下面的Python脚本。
#!/usr/bin/env python
1 + 2 * 4
(a)你认为这段脚本是用来做什么的?
(b)你认为这段脚本会输出什么?
(c)输入以上代码,并保存为脚本,然后运行它,它所做的与你的预期一样吗?为什么一样/不一样?
(d)这段代码单独执行和在交互解释器中执行有何不同?试一下,然后写出结果。
(e)如何改进这个脚本,以便它能和你想象的一样工作?

答:(a)这段脚本是用来计算表达式的值
(b)脚本会输出9
(c)保存为脚本,运行后没有输出。和自己预期不一样。没有考虑到脚本输出与交互式解释器输出的区别
(d)在解释器中输出9
(e)利用print语句

#!/usr/bin/env python

print 1+2*4

2-3.数值和操作符。启动交互解释器,使用Python对两个数值(任意类型)进行加、减、乘、除运算。然后使用取余操作符来得到两个数相除的余数,最后使用乘方操作符求A数的B次方。
答:
>>> a=60
>>> b=2.0
>>> a+b
62.0
>>> a-b
58.0
>>> a*b
120.0
>>> a/b
30.0
>>> a%b
0.0
>>> a**b
3600.0
>>>

2-4. 使用raw_input()函数得到用户输入。
(a)创建一段脚本使用raw_input()内建函数从用户输入得到一个字符串,然后显示这个用户刚刚键入的字符串。
(b)添加一段类似的代码,不过这次输入的是数值。将输入数据转换为一个数值对象,(使用int()或其他数值转换函数)并将这个值显示给用户看(注意,如果你用的是早于1.5的版本,你需要使用string.ato*()函数执行这种转换)。
答:

1 #!/usr/bin/python
2 
3 ‘‘‘using raw_input‘‘‘
4 
5 string=raw_input("Please input a string:")
6 print "You input:%s" %string
7 
8 digit=int(raw_input("Please input a num:"))
9 print "you input:%d"%digit

 

2-5. 循环和数字。分别使用while和for创建一个循环。
(a)写一个while循环,输出整型为0~10(要确保是0~10,而不是0~9或1~10)。
(b)做同(a)一样的事,不过这次使用range()内建函数。

答:

 1 #!/usr/bin/python
 2 
 3 ‘‘‘practise for loop and digits‘‘‘
 4 
 5 num=0
 6 
 7 #while loop
 8 
 9 while num<=10:
10         print num
11         num=num+1
12 
13 
14 #for loop
15 
16 for i in range(11):
17         print i

 

2-6.条件判断。判断一个数是正数还是负数,或者是0。开始先用固定的数值,然后修改你的代码支持用户输入数值再进行判断。

答:

 1 #!/usr/bin/python
 2 
 3 ‘‘‘receive a num and judge it‘‘‘
 4 
 5 num=int(raw_input("Please input a num:"))
 6 if num>0:
 7         print "%d is lager than 0"%num
 8 elif num==0:
 9         print "%d is equal to 0"%num
10 else:
11         print "%d is litter than 0"%num