习题 3: 数字和数学计算
每一种编程语言都包含处理数字和进行数学计算的方法。不必担心,程序员经常撒谎说他们是多么牛的数学天才,其实他们根本不是。如果他们真是数学天才,他们早就去从事数学相关的行业了,而不是写写广告程序和社交网络游戏,从人们身上偷赚点小钱而已。这章练习里有很多的数学运算符号。我们来看一遍它们都叫什么名字。你要一边写一边念出它们的名字来,直到你念烦了为止。名字如下:
- + plus 加号
- - minus 减号
- / slash 斜杠
- * asterisk 星号
- % percent 百分号
- < less-than 小于号
- > greater-than 大于号
- <= less-than-equal 小于等于号
- >= greater-than-equal 大于等于号
有没有注意到以上只是些符号,没有运算操作呢?写完下面的练习代码后,再回到上面的列表,写出每个符号的作用。例如 + 是用来做加法运算的。
python2:
print "I will now count my chickens:" print "Hens", 25 + 30 / 6 print "Roosters", 100 - 25 * 3 % 4 print "Now I will count the eggs:" print 3 + 2 + 1 - 5 + 4 % 2 - 1 / 4 + 6 print "Is it true that 3 + 2 < 5 - 7?"print 3 + 2 < 5 - 7 print "What is 3 + 2?", 3 + 2 print "What is 5 - 7?", 5 - 7 print "Oh, that's why it's False." print "How about some more." print "Is it greater?", 5 > -2 print "Is it greater or equal?", 5 >= -2 print "Is it less or equal?", 5 <= -2
你应该看到的结果

Python3:
print ("I will now count my chickens:")print ("Hens", 25 + 30 / 6)print ("Roosters", 100 -25 * 3 % 4)print ("Now I will count the eggs:")print ( 3 + 2 + 1 - 5 + 4 % 2 - 1 / 4 + 6 )print ("Is it true that 3 + 2 < 5 - 7 ?")print ( 3 + 2 < 5 - 7 )print ("What is 3 + 2 ?",3 + 2)print ("What is 5 - 7 ?",5 - 7)print ("Oh,that's why it's False.")print ("How about some more.")print ("Is it greater ?",5 > -2 )print ("Is it greater or equal ?",5 >= -2)print ("Is it less or equal ?",5 <= -2)
得到的结果为:
提示:在Python2中,整数除法的结果只包含整数部分,小数部分被删除(不是四舍五入,而是直接删除哦!)
加分习题
1. 使用 # 在代码每一行的前一行为自己写一个注解,说明一下这一行的作用。
2. 记得开始时的 <练习 0> 吧?用里边的方法把 Python 运行起来,然后使用刚才学到的运算符号,把Python当做计算器玩玩。
3. 自己找个想要计算的东西,写一个 .py 文件把它计算出来。
4. 有没有发现计算结果是”错”的呢?计算结果只有整数,没有小数部分。研究一下这是为什么,搜索一下“浮点数(floating point number)”是什么东西。
5. 使用浮点数重写一遍 ex3.py,让它的计算结果更准确(提示: 20.0 是一个浮点数)。
常见问题回答
为什么 % 是求余数符号,而不是百分号?很大程度上只是因为涉及人员选择了这个符号而已。一般而言它是百分号没错,就跟 100% 表示百分之百一样。在编程中除法我们用了 /,而求余数又恰恰选择了 % 这个符号,仅此而已。% 是怎么工作的?换个说法就是“X 除以 Y 还剩余 J”,例如“100 除以 16 还剩 4”。 % 运算的结果就是 J 这部分。运算优先级是什么样子的?美国我们用 PEMDAS 这个简称来辅助记忆,它的意思是“括号、指数、乘、除、加、减”——Parentheses Exponents Multiplication Division Addition Subtraction ——这也是 Python 里的运算优先级。为什么 / 除法算出来的比实际小?其实不是没算对,而是它将小数部分丢弃了,试试 7.0 / 4.0 和 7 / 4 比较一下,你就看出不同了。python2中:
python3中不会:
加群交流在后台回复“加群”,添加小编微信,小编拉你进去猜您喜欢往期精选▼笨办法学 Python--跟书练习一
笨办法学 Python--跟书练习二
小白学 Python(1):开篇
小白学 Python(2):基础数据类型(上)
小白学 Python(3):基础数据类型(下)
小白学 Python(4):变量基础操作
用 Python 一键分析你的上网行为,看是在认真工作还是摸鱼
Python安装及环境配置
Python语法入门(一)
Python入门网络爬虫之精华版
END
更多资源尽在星球,后台回复“星球”获取优惠