1 使用 random.getstate() 这个函数来获取随机数种子加工之后,随机数生成器的内部状态
>>> x=random.getstate()
>>> print(x)
这里省略
我们随机生成一组数
>>> random.randint(1,5)
2
>>> random.randint(1,5)
4
>>> random.randint(1,5)
5
>>> random.randint(1,5)
1
>>> random.setstate(x) -----------------------可以让刚刚的随机数重现
>>> random.randint(1,5)
2
>>>
>>> random.randint(1,5)
4
>>> random.randint(1,5)
5
>>> random.randint(1,5)
1
2 python的数字类型 整数 浮点数 复数
整数: python整数运算是不限制长度的
浮点数:python的浮点数是具有误差的,因为跟C语言一样,都是采用IEEE754的标准来存储浮点数的。
如何精确计算浮点数,这里我们借助一个叫作decimal的模块-------十进制
>>> 0.1+0.2
0.30000000000000004-------------------不精确
-------
>>> import decimal
>>> a = decimal.Decimal("0.1")
>>> b = decimal.Decimal("0.2")
>>> print(a+b)
0.3 ---------------------这样就会输出正确答案
>>> 0.00005
5e-05 -----------e-05表示10的-5次方
复数 包含一个实部和一个虚部
>>> x=1+2j
>>> x.real
1.0------------------实部
>>> x.imag
2.0----------------虚部 (注 它们都是浮点数)
地板除 -----取比结果小的最大整数
>>> 3//2
1
>>> -3//2
-2
divmod(x,y) 得到的是(x地板除y,x除以y的余数)
abs(x)------x的绝对值
int(x)----将x转换成整数
pow(2,3)---表示2的3次方 还可以 2**3 也表示2的三次方
pow(2,3,5)----表示2**3%5
3 布尔类型
只有两个值 False True
无论数值是多少,只有等值于0才是False 其他情况都是True
例如:
>>> bool(520)
True
>>> bool(0)
False
>>> bool("")
False
>>> bool(" ")
True
总结 定义为False 的对象:None和False
值为0的数字类型: 0,0.0,0j,Decimal(0),Fraction(0,1)---分子为0 分母为1
空的序列和集合;(),{},【】,set(), range(0)
4 逻辑运算符
逻辑运算也叫布尔运算,它的运算对象是布尔类型的对象
运算符 | 含义 |
and | 左边和右边同时为True结果为True |
or | 左边或右边其中一个为True 结果为True |
not | 如果操作数为True 结果为False 如果操作数为Fale 结果为True |
>>> 3<4 and 4<5
True
>>> 3<4 or 5<1
True
>>> not 3<4
False
5 运算符有优先级
not and or 部分