如何在python中生成随机字母?

viv*_*vek 2 string random numpy python-3.x pandas

有没有办法在Python中生成随机字母。我遇到过一个代码,可以从 az 生成随机字母。

例如,以下代码生成以下输出。

import pandas as pd
import numpy as np
import string

ran1 = np.random.random(5)
print(random)
[0.79842166 0.9632492  0.78434385 0.29819737 0.98211011]

ran2 = string.ascii_lowercase
'abcdefghijklmnopqrstuvwxyz'
Run Code Online (Sandbox Code Playgroud)

但是,我想生成随机字母,输入为随机字母的数量(示例 3),所需的输出为 [a, f, c]。提前致谢。

ALo*_*llz 5

将字母字符串转换为列表,然后使用numpy.random.choice. 您将得到一个数组,但如果需要,您可以将其设为一个列表。

import numpy as np
import string

np.random.seed(123)
list(np.random.choice(list(string.ascii_lowercase), 10))
#['n', 'c', 'c', 'g', 'r', 't', 'k', 'z', 'w', 'b']
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,默认行为是替换采样。如果需要,您可以通过添加参数来更改该行为replace=False