《“笨办法”学Python(第3版)》——习题3 数字和数学计算

习题3 数字和数学计算

每一种编程语言都包含处理数字和进行数学计算的方法。不必担心,程序员经常谎称他们是多么牛的数学天才,其实他们根本不是。如果他们真是数学天才,他们早就去从事数学相关的行业了,而不是写写广告程序和社交网络游戏,偷偷赚点小钱而已。

这个习题里有很多数学运算符号。我们来看一遍它们都叫什么名字。你要一边写一边念出它们的名字来,直到你念烦了为止。名字如下:

    • 加号
  • − 减号
  • / 斜杠
    • 星号
  • % 百分号
  • < 小于号
  • 大于号

  • <= 小于等于号
  • = 大于等于号

有没有注意到以上只是些符号,没有给出具体的运算操作呢?写完下面的练习代码后,再回到上面的列表,写出每个符号的作用。例如,+是用来做加法运算的。

ex3.py

1     print "I will now count my chickens:"
2
3     print "Hens", 25 + 30 / 6
4     print "Roosters", 100 - 25 * 3 % 4
5
6     print "Now I will count the eggs:"
7
8     print 3 + 2 + 1 - 5 + 4 % 2 - 1 / 4 + 6
9
10     print "Is it true that 3 + 2 < 5 - 7?"
11
12     print 3 + 2 < 5 – 7
13
14     print "What is 3 + 2?", 3 + 2
15     print "What is 5 - 7?", 5 – 7
16
17     print "Oh, that's why it's False."
18
19     print "How about some more."
20
21     print "Is it greater?", 5 > -2
22     print "Is it greater or equal?", 5 >= -2
23     print "Is it less or equal?", 5 <= -2

应该看到的结果

习题3 会话

$ python ex3.py
I will now count my chickens:
Hens 30
Roosters 97
Now I will count the eggs:
7
Is it true that 3 + 2 < 5 - 7?
False
What is 3 + 2? 5
What is 5 - 7? -2
Oh, that's why it's False.
How about some more.
Is it greater? True
Is it greater or equal? True
Is it less or equal? False

附加练习

1.每一行的上面使用#为自己写一个注释,说明一下这一行的作用。

2.记得习题0吧?用里边的方法运行Python,然后使用刚才学到的运算符号,把Python当做计算器玩玩。

3.自己找个想要计算的东西,写一个.py文件把它计算出来。

4.有没有发现计算结果是“错”的呢?计算结果只有整数,没有小数部分。研究一下这是为什么,搜索一下“浮点数”(floating point number)是什么东西。

5.使用浮点数重写一遍ex3.py,让它的计算结果更准确。(提示:20.0是一个浮点数。)

常见问题回答

为什么%是求余数符号,而不是百分号?

很大程度上只是因为设计人员选择了这个符号而已。正常写作时它是百分号没错,在编程中除法我们用了/,而求余数又恰恰选择了%这个符号,仅此而已。
%是怎么工作的?

换个说法就是“X除以Y还剩余J”,例如“100除以16还剩4”。%运算的结果就是J这部分。
运算优先级是怎样的?

在美国,我们用PEMDAS这个简称来辅助记忆,它的意思是“括号(Parentheses)、指数(Exponents)、乘(Multiplication)、除(Division)、加(Addition)、减(Subtraction)”,这也是Python里的运算优先级。
为什么/(除法)算出来的比实际小?

其实不是没算对,而是它将小数部分丢弃了,试试7.0 / 4.0和7 / 4比较一下,你就看出不同了。

时间: 2024-09-15 08:36:44

《“笨办法”学Python(第3版)》——习题3 数字和数学计算的相关文章

《“笨办法”学Python(第3版)》——习题5 更多的变量和打印

习题5 更多的变量和打印 我们现在要键入更多的变量并且把它们打印出来.这次我们将使用一个叫"格式化字符串"(format string)的东西.每一次你使用双引号(")把一些文本引用起来,就创建了一个字符串.字符串是程序向人展示息的方式.你可以打印(显示)它们,可以将它们写入文件,还可以将它们发送给网站服务器,很多事情都是通过字符串交流实现的. 字符串是非常好用的东西,所以在这个习题中你将学会如何创建包含变量内容的字符串.使用专门的格式和语法把变量的内容放到字符串里,相当于来

《“笨办法”学Python(第3版)》——习题4 变量和命名

习题4 变量和命名 你已经学会了print和算术运算.下一步要学的是"变量"(variable).在编程中,变量只不过是用来指代某个东西的名字.程序员通过使用变量名可以让他们的程序读起来更像自然语言.而且因为程序员的记性都不怎么好,变量名可以让他们更容易记住程序的内容.如果他们没有在写程序时使用好的变量名,在下一次读到原来写的代码时他们会大为头疼的. 如果被这个习题难住了的话,想想之前教过的,要注意找到不同点.关注细节. 1.在每一行的上面写一行注释,给自己解释一下这一行的作用. 2.

《“笨办法”学Python(第3版)》——习题2 注释和#号

习题2 注释和#号 程序里的注释是很重要的.它们可以用自然语言告诉你某段代码的功能是什么.想要临时移除一段代码时,你还可以用注释的方式临时禁用这段代码.这个习题就是让你学会在Python中注释. ex2.py 1 # A comment, this is so you can read your program later. 2 # Anything after the # is ignored by python. 3 4 print "I could have code like this.

《“笨办法”学Python(第3版)》——习题6 字符串和文本

习题6 字符串和文本 虽然你已经在程序中写过字符串了,但是你还不了解它们的用处.在这个习题中我们将使用复杂的字符串来建立一系列变量,从中你将学到它们的用途.首先,我们解释一下字符串是什么. 字符串通常是指你想要展示给别人的或者是想要从程序里"导出"的一小段字符.Python可以通过文本里的双引号(")或者单引号(')识别出字符串来.这在以前的打印练习中你已经见过很多次了.如果你把单引号或者双引号括起来的文本放到print后面,它们就会被Python打印出来. 字符串可以包含之

《“笨办法”学Python(第3版)》——习题1 第一个程序

习题1 第一个程序 你应该在习题0上花了不少的时间,学会了如何安装文本编辑器,运行文本编辑器,以及如何运行终端.如果你还没有完成这些练习,请不要继续往下进行了,否则你不会觉得很好过的.写在习题开头警告你不要跳过前面内容的警示本书中仅此一次,切记切记. 将下面的内容写到一个文件中,取名为ex1.py.这种命名方式很重要,Python文件最好以.py结尾. ex1.py print "Hello World!" print "Hello Again" print &qu

《“笨办法”学Ruby》(第3版)目录—导读

作译者简介 "笨办法"学Ruby(第3版) 作者简介 Zed Shaw是一名狂热的吉他手.程序员和编程书作家.他的书教世界各地的人如何写软件.他的<"笨办法"学Python>在全球有数百万的读者.他写的软件大大小小的公司都在使用.他的文章经常被众多极客圈里的人阅读和引用.他是一名活跃且有趣的作家,他会让你大笑,也会让你思考. 译者简介 王巍巍是一名受软件和编程的吸引中途转行的软件从业人员.写代码和翻译是他的两大爱好,他还喜欢在网上撰写和翻译一些文章.如果

《“笨办法”学Ruby》(第3版)—习题0 准备工作

习题0 准备工作 "笨办法"学Ruby(第3版) 这个习题并没有代码,它的主要目的是让你在计算机上安装好Ruby.你应该尽量照着说明进行操作,例如,Mac OS X已经安装了Ruby 2,所以就不要在上面安装别的Ruby版本了. 警告 如果你不知道怎样使用Windows下的PowerShell.OS X下的Terminal或者Linux下的bash,那你就需要先学会一个.你应该先完成附录中的习题后,再回来继续下面这些习题. Mac OS X 完成这个习题需要完成下列任务. 1.用浏览器

《“笨办法”学Ruby》(第3版)—习题2 注释和#号

习题2 注释和#号 "笨办法"学Ruby(第3版) 程序里的注释是很重要的.它们可以用自然语言告诉你某段代码的功能是什么.想要临时移除一段代码时,你也可以用注释的方式临时禁用这段代码.这个习题就是让你学会在Ruby中使用注释. ex2.rb 1 # A comment, this is so you can read your program later. 2 # Anything after the # is ignored by ruby. 3 4 puts "I cou

跟老齐学Python之字典,你还记得吗?_python

字典,这个东西你现在还用吗?随着网络的发展,用的人越来越少了.不少人习惯于在网上搜索,不仅有web版,乃至于已经有手机版的各种字典了.我曾经用过一本小小的<新华字典>. <新华字典>是中国第一部现代汉语字典.最早的名字叫<伍记小字典>,但未能编纂完成.自1953年,开始重编,其凡例完全采用<伍记小字典>.从1953年开始出版,经过反复修订,但是以1957年商务印书馆出版的<新华字典>作为第一版.原由新华辞书社编写,1956年并入中科院语言研究所(