【Python教学】4-4-2-1 另一些实用的库(一)
turtle模块会在
官网模块索引:https://docs.python.org/zh-cn/3/py-modindex.html#cap-r
1.random(生成伪随机数):
警告:random不适合用于生成密码,若需要高保密性,则使用secrets库!
random.seed(a=None):初始化随机数生成器。a是种子,默认使用系统时间,也可以用整数、浮点数或字符串。
random.randbytes(n):生成 n 个随机字节。
random.randint(a,b):随机生成一个整数N,满足a <= N <= b。
random.choice(seq):从非空序列seq中随机返回一个元素。
random.shuffle(x):就地将序列 x 随机打乱位置。
random.random():在0.0和1.0之间随机生成一个浮点数。
random.uniform(a,b):返回随机浮点数N,当a<b时,a<=N<=b;当a>b时,b<=N<=a。
2.secrets(高度加密伪随机数,主要用于密码):
secrets.choice(sequence):跟random里面的choice没什么区别,只是更安全。
secrets.randbelow(n):返回(0, n) 范围内的随机安全整数。
secrets.randbits(k):返回 k 个随机比特位(1/8k字节)的整数,但是安全。
3.time(时间的访问和转换):
time.sleep(secs):原理很复杂,但是一般情况下功能是暂停secs秒。
time.time():以浮点数的形式返回纪元秒数(闰秒不计入纪元秒数,所以和真实时间有区别),这个时间依赖于平台,通常被称为Unix时间。
time.time_ns():类似于前者,但返回以纳秒为单位的整数,可以避免浮点数导致的精度缺失。
time.thread_time():(以小数表示的秒为单位)返回当前线程的系统和用户 CPU 时间的总计值。 它不包括睡眠状态所消耗的时间。 根据定义它只作用于线程范围。 返回值的参考点未被定义,因此只有两次调用之间的差值才是有效的。
time.thread_time_ns():与前者相似,但返回纳秒时间。
time模块中有关Windows系统的主要功能就这么多了,其他大多数都是针对Unix系统的。
4.collections(容器数据类型)
collections.OrderedDict([items]):一个用于创建有序字典的类:
不仅具有一般字典的所有功能,而且能够同时保存键和值的映射关系以及键值对间的顺序。
新增的方法:
popitem(last=True):删除并返回一个键值对item,如果last为True,则按照LIFO原则(后进先出,删除最新的一个),否则按FIFO原则(先进先出,删除最老的一个)。
move_to_end(key, last=True):将一个现有的键值对移到序字典的任一端。 如果 last 为真则将键值对移到末尾,或者如果 last 为假则将条目移到开头。 如果 key 不存在则会引发KeyError。