繁体   English   中英

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

[英]How to generate random letters in python?

有什么方法可以在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'

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

将字母字符串转换为列表,然后使用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']

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

这是从https://pythontips.com/2013/07/28/generating-a-random-string/修改的想法

import string
import random

def random_generator(size=6, chars=string.ascii_lowercase):
    return ''.join(random.choice(chars) for x in range(size))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM