备考计算机二级Python之Day3

一、数字类型

(1)整数类型

一般认为整数类型没有取值范围限制。

整数类型有4种进制表示:十进制、二进制、八进制和十六进制

进制种类引导符号
十进制
二进制0b或0B
八进制0o或0O
十六进制0x或0X

程序无论采用何种进制表达数据,计算机内部都可以以相同的二进制格式存储数值,但为了易于理解,进制之间的运算结果默认以十进制方式显示。

(0x3F2+1010)/0o1762
2.0
0b1010+0x1010+0o1010+1010
5652
0x1010>0o1010
True
0x1010==4112
True

(2)浮点数类型

Python语言中的浮点数类型必须带有小数部分,小数部分可以是0.

浮点数有两种表示方式:十进制形式的一般表示和科学计数法表示。

提示:整数和浮点数

1010和1010.0值虽然相等,但进行幂运算的结果却可能不同。可以看出整数的运算精度比浮点数更高。

pow(1010,32)
1374940678531097054162291350571104044956417832049380936096496320100000000000000000000000000000000
pow(1010.0,32)
1.3749406785310972e+96

(3)复数类型

Python语言中,复数可以看作是二元有序实数对(a,b),表示a+bj。当b为1时,1不可以省略,即1j表示复数,而j则表示Python程序中的一个变量。

复数类型中实部和虚部都是浮点类型,对于复数z,可以用z.real和z.imag分别获得它的实数部分和虚数部分。

(1.23e4+5.67e4j).real
12300.0
(1.23e4+5.67e4j).imag
56700.0
1.23e4+5.67e4j.imag  #先获得5.67e4的虚部,在与1.23e4进行求和计算
69000.0

二、数字类型运算

(1)数值运算操作符

九个基本数值运算操作符。

+-*///%-x+x**
商,结果为浮点数

x与y之间的整数商,

即,不大于x与y之间商的最大整数 

余数,也称模运算x的y次幂

模运算:本质上,整数模运算n%m能将整数n映射到[0,m-1]的区间中,获得边界可控的数值范围。

数值运算可能改变结果的数据类型,有如下基本规则:

*整数和浮点数混合运算,输出结果是浮点数

*整数之间运算,产生结果类型与操作符相关,除法运算的结果是浮点数

*整数或浮点数与复数运算,输出结果是复数

1010/10
101.0

1010.0//3
336.0

1010.0%3
2.0

10-(1+1j)
(9-1j)

 所有二元运算操作符都可以和赋值符号(=)相连,形成增强操作符(+=,-=,*=,/=,//=,%=,**=).

用op表示这些二元运算操作符。

x op=y等价于x=x op y
x=99
x**=3
print(x)
970299
x+=1
print(x)
970300
x%=88
print(x)
12

提示:op和=之间不能增加空格 

(2)数值运算函数

函数描述
abs(x)x的绝对值
divmod(x,y)(x//y,x%y),输出为二元组形式(也称为元组类型)
pow(x,y)或pow(x,y,z)x**y或(x**y)%y,幂运算
round(x)或round(x,d)对x四舍五入,保留d位小数,无参数d则返回四舍五入的整数值
max(x1,x2,...,xn)x1,x2,...,xn的最大值,n没有限定,可以任意数量
min(x1,x2,...,xn)x1,x2,...,xn的最小值,n没有限定,可以任意数量

1、abs(x)

abs(x)用于计算整数或浮点数x的绝对值,结果为非负整数。也可计算复数的绝对值,由于实部和虚部都是浮点数,所以复数的绝对值也是浮点数。

abs(-30)
30
abs(1+1j)
1.4142135623730951

2、divmod(x,y)

divmod(x,y)用于计算x和y的除余结果,返回两个值,分别是:x与y的整数除即x//y,以及x与y的余数,即x%y。返回的两个值组成了一个元组类型。可以通过赋值方式将结果同时反馈给两个变量。

divmod(100,6)
(16, 4)
a,b=divmod(100,6)
a
16
b
4

3、pow(x,y)

pow(x,y)用来计算x的y次幂,与x**y相同。pow(x,y,z)则用来计算(x^y)%z,模运算和幂运算同时进行,速度更快。

pow(10,2)
100
pow(0x1010,0b1010)
1382073245479425468920150911010996224
pow(55,1999999,10000)   #计算后四位
4375
pow(55,1999999)%10000   #速度慢
4375

4、round(x)

round(x)对整数或浮点数x进行四舍五入运算。round(x,d)对浮点数x进行带有d位小数的四舍五入运算。“四舍五入”只是一个约定的说法。对于x.5,x为偶数,不进位‘x为奇数,进位。采用“奇进偶不进”的方式。

round(1.4)
1
round(0.5)
0
round(1.5)
2
round(0.50001)
1
round(3.1415926,3)
3.142

5、min()和max()

min()和max()可对任意多数值进行最小值和最大值比较,并输出结果。

min(178,35,556,2.5,6,0.76)
0.76
max(178,35,556,2.5,6,0.76)
556

(3)数值比较运算

六个比较运算符

>>=<<===!=

比较运算结果是True或False。比较运算可以在整数和浮点数之间任意进行。

1024>=0x1010
False
10==10.0
True

涉及复数类型的比较运算受限,只能判断是否相等,即使用==和!=。

5==4+3j
False
3+4j==4+3j
False
10>10+1j
Traceback (most recent call last):
  File "<pyshell#21>", line 1, in <module>
    10>10+1j
TypeError: '>' not supported between instances of 'int' and 'complex'

这是第三章的前一部分,称为上部分,第三章内容比较多,所以有点厌倦和懈怠哈,今天之前要把下部分敲完,来弥补昨天的任务吧。

  • 14
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值