» Python快速入门 » 4. 常用模块篇 » 4.6 random 随机

random 随机

random 模块实现了各种分布的伪随机数生成器。

生成一个随机整数

import random

print(random.randint(1, 9999)) # 7438
print(random.randint(1, 9999)) # 2513
print(random.randint(1, 9999)) # 8846

生成随机字符串

import random
import string

candidates = string.ascii_lowercase
# make a random string of length 10
result = ''.join(random.choice(candidates) for _ in range(10))
print(result) # kcxgdhpvpp

# make a random string of length 20
candidates = string.ascii_letters + string.digits
result = ''.join(random.choice(candidates) for _ in range(20))
print(result) # bDZ6ircqadMZfoHDM6yZ

基于高斯分布(正态分布)生成浮点数

import random

mu, sigma = 2, 0.2
print(random.gauss(mu, sigma)) # 2.2689935909942758
print(random.gauss(mu, sigma)) # 2.3242305820201996 
print(random.gauss(mu, sigma)) # 1.9878185078852277

mu 是均值,而 sigma 是标准差。

随机选择多个元素

import random

students = ['Alice', 'Bob', 'Cindy', 'Doug']
print(random.choices(students, k=2)) # ['Doug', 'Cindy']
print(random.choices(students, k=2)) # ['Cindy', 'Bob']
print(random.choices(students, k=2)) # ['Alice', 'Alice']

choices(population, ..., k=1) 返回一个大小为 k 的列表,其中的元素是从 population 中选取的。

代码挑战

尝试修改编辑器中代码来创建一个足够安全的密码。

Loading...
> 此处输出代码运行结果
上页
下页