一些 Python 内置模块

更新中…

1 random

随机模块。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import random

n1 = random.randint(1, 10)
# n1: 随机返回一个整数,范围是 [1, 10]
# 相当于 randrange(a, b+1)

n2 = random.randrange(1, 10, 2)
# n2: 随机返回一个整数,范围是 [1, 10),步长为 2

n3 = random.random()
# n3: 随机返回一个浮点数,范围是 [0, 1)

n4 = random.uniform(1, 10)
# n4: 随机返回一个浮点数,范围是 [1, 10]

n5 = random.choice([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
# n5: 随机返回一个列表中的元素

n6 = random.choices([1, 2, 3], [1, 1, 8], k=6)
# n6: 以 [1, 1, 8] 的权重随机返回6个列表中的元素,可重复

n7 = random.sample([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 3)
# n7: 随机返回3个列表中的元素,且不重复

n8 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
random.shuffle(n8)
# n8: 随机打乱列表中的元素

2 exec

动态执行 Python 代码。

1
2
3
4
5
6
7
8
a = 1
b = 2
exec("c=a+b")
# c: 3
exec("c=a+b", {"a": 3, "b": 4})
# c: 3
exec("c=a+b", {"a": 3, "b": 4}, {"a": 5, "b": 6})
# c: 3

3 eval

计算指定表达式的值。

1
2
3
4
5
6
7
8
a = 1
b = 2
c = eval("a+b")
# c: 3
c = eval("a+b", {"a": 3, "b": 4})
# c: 3
c = eval("a+b", {"a": 3, "b": 4}, {"a": 5, "b": 6})
# c: 3

参考

评论