str和repr显示格式
str()是用户友好式显示,repr()是交互模式回显(《Python学习手册》上写两者运行结果不同,但是我运行结果是一样的。。。)
num = 1/3
repr(num) #输出'0.3333333333333333'
str(num) #输出'0.3333333333333333'
str('hh') #'hh'
repr('hh') #"'hh'"
除法
除法有三种类型:传统除法、真除法和Floor除法。
- 传统除法对于整数会省去小数部分,对于浮点数会保留。(对于整数,类似于Floor除法)
- 真除法对任何类型都保留小数。
- Floor除法对任何类型省略掉小数部分,剩下最小的能整除的整数部分(结果虽然是无小数值,但是整数还是浮点数类型取决于被除数和除数了)。
对于Python而言:
- / :Python2.6以前,/符号表示传统除法,Python3.0以后去掉传统除法改成真除法。
- // :通常叫做截断除法,更准确的说法是floor除法。向下舍入,并不是严格的截断,对负数也有效。在Python2.2新增的,2.6和3.0都可以用。
以下为Python3中的试验结果:
10/4 #2.5
10//4 #2
10/4.0 #2.5
10//4.0 #2.0
10//(-4.0) #-3.0
严格的截断可以参考math块中的trunc,四舍五入可以用round:
import math
math.floor(2.5) #2
math.floor(-2.5) #-3
math.trunc(2.5) #2
math.trunc(-2.5) #-2
math.trunc(5/-2) #-2
round(2.567) #3
round(2.467) #2
round(2.567,2) #2.57,其中后一个参数表示保留小数点后几位
计算平方根:
Python中有3种计算平方根的方法:
import math
math.sqrt(144)
144**.5
pow(144,.5)
builtins模块
Python中所有的内置函数都位于一个隐性的命名空间里,在调用这些函数时,不需要import模块。这个命名空间对应于Python3.0中名为builtins的模块。
import builtins #Python2.6中是_builtin_
dir(builtins)#在使用内部函数时是不用导入,如果要了解该块具体说明,还是要导入一下