Python 世界的开端:四则运算
编者按:本文基于Python2.x,与Python3.x存在差异。时间仓促未能及时更新,请观看时注意分辨。我们将尽快更新。
用Python计算
一提到计算机,当然现在更多人把她叫做电脑,这两个词都是指computer。不管什么,只要提到她,普遍都会想到她能够比较快地做加减乘除,甚至乘方开方等。乃至于,有的人在口语中区分不开计算机和计算器。
那么,做为零基础学习这,也就从计算小学数学题目开始吧。因为从这里开始,数学的基础知识列为肯定过关了。
复习
还是先来重温一下伟大时刻,打印hello world.
打开电脑,让Python idle运行起来,然后输入:
>>> print 'Hello, World' Hello, World
细心的看官,是否注意到,我在这里用的是单引号,上次用的是双引号。两者效果一样,也就是在这种情况下,单引号和双引号是一样的效果,一定要是成对出现的,不能一半是单引号,另外一半是双引号。
四则运算
按照下面要求,在ide中运行,看看得到的结果和用小学数学知识运算之后得到的结果是否一致
>>> 2+5 7 >>> 5-2 3 >>> 10/2 5 >>> 5*2 10 >>> 10/5+1 3 >>> 2*3-4 2
上面的运算中,分别涉及到了四个运算符号:加(+)、减(-)、乘(*)、除(/)
另外,我相信看官已经发现了一个重要的公理:
在计算机中,四则运算和小学数学中学习过的四则运算规则是一样的
要不说人是高等动物呢,自己发明的东西,一定要继承自己已经掌握的知识,别跟自己的历史过不去。伟大的科学家们,在当初设计计算机的时候就想到列为现在学习的需要了,一定不能让后世子孙再学新的运算规则,就用小学数学里面的好了。感谢那些科学家先驱者,泽被后世。
下面计算三个算术题,看看结果是什么
- 4 + 2
- 4.0 + 2
- 4.0 + 2.0
看官可能愤怒了,这么简单的题目,就不要劳驾计算机了,太浪费了。
别着急,还是要在ide中运算一下,然后看看结果,有没有不一样?要仔细观察哦。
>>> 4+2 6 >>> 4.0+2 6.0 >>> 4.0+2.0 6.0
不一样的地方是:第一个式子结果是6,后面两个是6.0。
现在我们就要引入两个数据类型:整数和浮点数
对这两个的定义,不用死记硬背,google一下。记住爱因斯坦说的那句话:书上有的我都不记忆(是这么的说?好像是,大概意思,反正我也不记忆)。后半句他没说,我补充一下:忘了就google。
定义1:类似4、-2、129486655、-988654、0这样形式的数,称之为整数
定义2:类似4.0、-2.0、2344.123、3.1415926这样形式的数,称之为浮点数
比较好理解,整数,就是小学学过的整数;浮点数,就是小数。如果整数写成小数形式,比如4写成4.0,也就变成了浮点数。
爱学习,就要有探索精神。看官在网上google一下整数,会发现还有另外一个词:长整数(型)。顾名思义,就是比较长的整数啦。在有的语言中,把这个做为单独一类区分开,但是,在Python中,我们不用管这个了。只要是整数,就只是整数,不用区分长短(以前版本区分),因为区分没有什么意思,而且跟小学学过的数学知识不协调。
还有一个问题,需要向看官交代一下,眼前可能用不到,但是会总有一些人用这个来忽悠你,当他忽悠你的时候,下面的知识就用到了。
整数溢出问题
对于其它语言,整数溢出是必须正视的,但是,在Python里面,看官就无忧愁了,原因就是Python为我们解决了这个问题。
ok!看官可以在IDE中实验一下大整数相乘。
>>> 123456789870987654321122343445567678890098876*1233455667789990099876543332387665443345566 152278477193527562870044352587576277277562328362032444339019158937017801601677976183816L
看官是幸运的,Python解忧愁,所以,选择学习Python就是珍惜光阴了。
上面计算结果的数字最后有一个L,就表示这个数是一个长整数,不过,看官不用管这点,反正是Python为我们搞定了。
在结束本节之前,有两个符号需要看官牢记(不记住也没关系,可以随时google,只不过记住后使用更方便)
- 整数,用int表示,来自单词:integer
- 浮点数,用float表示,就是单词:float
可以用一个命令:type(object)来检测一个数是什么类型。
>>> type(4) <type 'int'> #4是int,整数 >>> type(5.0) <type 'float'> #5.0是float,浮点数 type(988776544222112233445566778899887766554433221133344455566677788998776543222344556678) <type 'long'> #是长整数,也是一个整数
几个常见函数
在这里就提到函数,因为这个东西是经常用到的。什么是函数?如果看官不知道此定义,可以去google。貌似是初二数学讲的了。
有几个常用的函数,列一下,如果记不住也不要紧,知道有这些就好了,用的时候就google。
求绝对值
>>> abs(10) 10 >>> abs(-10) 10 >>> abs(-1.2) 1.2
四舍五入
>>> round(1.234)
1.0
>>> round(1.234,2)
1.23>>> #如果不清楚这个函数的用法,可以使用下面方法看帮助信息
>>> help(round)Help on built-in function round in module __builtin__:
round(...)
round(number[, ndigits]) -> floating point numberRound a number to a given precision in decimal digits (default 0 digits).
This always returns a floating point number. Precision may be negative.
幂函数
>>> pow(2,3) #2的3次方 8
math模块(对于模块可能还有点陌生,不过不要紧,先按照下面代码实验一下,慢慢就理解了)
>>> import math #引入math模块 >>> math.floor(32.8) #取整,不是四舍五入 32.0 >>> math.sqrt(4) #开平方 2.0
总结
- Python里的加减乘除按照小学数学规则执行
- 不用担心大整数问题,Python会自动处理
- type(object)是一个有用的东西
————
本文完,如果你想继续学习,可以点击下面的链接,继续看: