Python3 数字Number(六)
2018-06-17 23:27:23来源:未知 阅读 ()
Python 数字数据类型用于存储数值。
数据类型是不允许改变的,这就意味着如果改变数字数据类型得值,将重新分配内存空间。
以下实例在变量赋值时 Number 对象将被创建:
1 var1 = 1 2 var2 = 10
您也可以使用del语句删除一些数字对象的引用。
del语句的语法是:
1 del var1[,var2[,var3[....,varN]]]]
您可以通过使用del语句删除单个或多个对象的引用,例如:
1 del var 2 del var_a, var_b
像大多数语言 一样,数值类型的赋值和计算都是很直观的。
内置的 type() 函数可以用来查询变量所指的对象类型。
1 >>> a, b, c, d = 20, 5.5, True, 4+3j 2 >>> print(type(a), type(b), type(c), type(d)) 3 <class 'int'> <class 'float'> <class 'bool'> <class 'complex'>
此外还可以用 isinstance 来判断:
1 >>>a = 111 2 >>> isinstance(a, int) 3 True 4 >>>
isinstance 和 type 的区别在于:
1 class A: 2 pass 3 4 class B(A): 5 pass 6 7 isinstance(A(), A) # returns True 8 type(A()) == A # returns True 9 isinstance(B(), A) # returns True 10 type(B()) == A # returns False
区别就是:
- type()不会认为子类是一种父类类型。
- isinstance()会认为子类是一种父类类型。
Python3 支持 int、float、bool(布尔)、complex(复数)。
- 整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。
- 浮点型(float) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)
- 布尔(bool) - Python3 中,把 True 和 False 定义成关键字了,但它们的值还是 1 和 0,它们可以和数字相加。。在 Python2 中是没有布尔型的,它用数字 0 表示 False,用 1 表示 True。
- 复数( (complex)) - 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。
布尔(bool)
在Python中,可以直接用True
、False
表示布尔值(请注意大小写),也可以通过布尔运算计算出来:
1 >>> True 2 True 3 >>> False 4 False 5 >>> 3 > 2 6 True 7 >>> 3 > 5 8 False 9 10 #布尔类型可以参与运算 11 >>> True+1 12 2 13 >>> False+1 14 1 15 >>> True==1 16 True 17 >>> True==2 18 False 19 >>> False==1 20 False 21 >>> False==0 22 True
布尔值可以用and
、or
和not
运算。
and
运算是与运算,只有所有都为True
,and
运算结果才是True
:
1 >>> True and True 2 True 3 >>> True and False 4 False 5 >>> False and False 6 False 7 >>> 5 > 3 and 3 > 1 8 True
or
运算是或运算,只要其中有一个为True
,or
运算结果就是True
:
1 >>> True or True 2 True 3 >>> True or False 4 True 5 >>> False or False 6 False 7 >>> 5 > 3 or 1 > 3 8 True
not
运算是非运算,它是一个单目运算符,把True
变成False
,False
变成True
:
1 >>> not True 2 False 3 >>> not False 4 True 5 >>> not 1 > 2 6 True
布尔值经常用在条件判断中,比如:
1 1 if age >= 18: 2 2 print('adult') 3 3 else: 4 4 print('teenager')
复数( (complex))
复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。如:3+26j
生成一个实数,通过实数转换成复数:
1 >>> a=0.9 2 >>> b=complex(a) 3 >>> b 4 (0.9+0j) 5 >>>
直接定义一个复数,指令如下:
1 >>> c=0.1+0.7j 2 >>> c 3 (0.1+0.7j) 4 >>>
采用.real访问复数的实部:
1 >>> d=9+8j 2 >>> d.real 3 9.0 4 >>>
采用.imag访问复数的虚部:
1 >>> d=9+8j 2 >>> d.real 3 9.0 4 >>> d.imag 5 8.0 6 >>>
采用abs求复数的模:
1 >>> d=9+8j 2 >>> abs(d) 3 12.041594578792296 4 >>>
Python 数字类型转换
有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。
-
int(x) 将x转换为一个整数。
-
float(x) 将x转换到一个浮点数。
-
complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。
-
complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式。
以下实例将浮点数变量 a 转换为整数:
1 >>> a = 1.0 2 >>> int(a) 3 1
1 >>> a=9 2 >>> b=8 3 >>> complex(a) 4 (9+0j) 5 >>> complex(a,b) 6 (9+8j) 7 >>>
Python 数字运算
Python 解释器可以作为一个简单的计算器,您可以在解释器里输入一个表达式,它将输出表达式的值。
表达式的语法很直白: +, -, * 和 / 和其它语言(如Pascal或C)里一样。例如:
1 >>> 2 + 2 2 4 3 >>> 50 - 5*6 4 20 5 >>> (50 - 5*6) / 4 6 5.0 7 >>> 8 / 5 # 总是返回一个浮点数 8 1.6
注意:在不同的机器上浮点运算的结果可能会不一样。
在整数除法中,除法(/)总是返回一个浮点数,如果只想得到整数的结果,丢弃可能的分数部分,可以使用运算符 // :
1 >>> 17 / 3 # 整数除法返回浮点型 2 5.666666666666667 3 >>> 4 >>> 17 // 3 # 整数除法返回向下取整后的结果 5 5 6 >>> 17 % 3 # %操作符返回除法的余数 7 2 8 >>> 5 * 3 + 2 9 17
等号(=)用于给变量赋值。赋值之后,除了下一个提示符,解释器不会显示任何结果。
1 >>> width = 20 2 >>> height = 5*9 3 >>> width * height 4 900
Python 可以使用 ** 操作来进行幂运算:
1 >>> 5 ** 2 # 5 的平方 2 25 3 >>> 2 ** 7 # 2的7次方 4 128
不同类型的数混合运算时会将整数转换为浮点数:
1 >>> 3 * 3.75 / 1.5 2 7.5 3 >>> 7.0 / 2 4 3.5
在交互模式中,最后被输出的表达式结果被赋值给变量 _ 。例如:
1 >>> tax = 12.5 / 100 2 >>> price = 100.50 3 >>> price * tax 4 12.5625 5 >>> price + _ 6 113.0625 7 >>> round(_, 2) 8 113.06
此处, _ 变量应被用户视为只读变量。
数学函数
函数 | 返回值 ( 描述 ) |
---|---|
abs(x) | 返回数字的绝对值,如abs(-10) 返回 10 |
ceil(x) | 返回数字的上入整数,如math.ceil(4.1) 返回 5 |
cmp(x, y) |
如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。 Python 3 已废弃 。使用 使用 (x>y)-(x<y) 替换。 |
exp(x) | 返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045 |
fabs(x) | 返回数字的绝对值,如math.fabs(-10) 返回10.0 |
floor(x) | 返回数字的下舍整数,如math.floor(4.9)返回 4 |
log(x) | 如math.log(math.e)返回1.0,math.log(100,10)返回2.0 |
log10(x) | 返回以10为基数的x的对数,如math.log10(100)返回 2.0 |
max(x1, x2,...) | 返回给定参数的最大值,参数可以为序列。 |
min(x1, x2,...) | 返回给定参数的最小值,参数可以为序列。 |
modf(x) | 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。 |
pow(x, y) | x**y 运算后的值。 |
round(x [,n]) | 返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。 |
sqrt(x) | 返回数字x的平方根。 |
注意:round函数是个 坑!
1 >>> round(10.5) 2 10 3 >>> round(11.5) 4 12 5 >>>
1 round(2.355,2) 2 2.35
除非对精确度没什么要求,否则尽量避开用round()函数。近似计算我们还有其他的选择:
- 使用math模块中的一些函数,比如math.ceiling(天花板除法)。
- python自带整除,python2中是/,3中是//,还有div函数。
- 字符串格式化可以做截断使用,例如 "%.2f" % value(保留两位小数并变成字符串……如果还想用浮点数请披上float()的外衣)。
- 当然,对浮点数精度要求如果很高的话,请用嘚瑟馍,不对不对,请用decimal模块。
关于该问题搜索后解释比较清楚的文章地址如下:http://www.runoob.com/w3cnote/python-round-func-note.html
随机数函数
随机数可以用于数学,游戏,安全等领域中,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。
Python包含以下常用随机数函数:
函数 | 描述 |
---|---|
choice(seq) | 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。 |
randrange ([start,] stop [,step]) | 从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1 |
random() | 随机生成下一个实数,它在[0,1)范围内。 |
seed([x]) | 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。 |
shuffle(lst) | 将序列的所有元素随机排序 |
uniform(x, y) | 随机生成下一个实数,它在[x,y]范围内。 |
三角函数
函数 | 描述 |
acos(x) | 返回x的反余弦弧度值。 |
asin(x) | 返回x的反正弦弧度值 |
atan(x) | 返回x的反正切弧度值。 |
atan2(y, x) | 返回给定的 X 及 Y 坐标值的反正切值。 |
cos(x) | 返回x的弧度的余弦值 |
hypot(x, y) | 返回欧几里德范数 sqrt(x*x + y*y)。 |
sin(x) | 返回的x弧度的正弦值。 |
tan(x) | 返回x弧度的正切值。 |
degrees(x) | 将弧度转换为角度,如degrees(math.pi/2) , 返回90.0 |
radians(x) | 将角度转换为弧度 |
数学常量
常量 | 描述 |
---|---|
pi | 数学常量 pi(圆周率,一般以π来表示) |
e | 数学常量 e,e即自然常数(自然常数)。 |
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:各种推导式详解
下一篇:同事入职与离职的设置
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- python3 enum模块的应用 2019-08-13
- python3 之 趣味数学题(爱因斯坦) 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash