尝试生成随机数量的 [
或 ]
。
sample = random.choice("[]")
上面打印了 [
或 ]
,我怎样才能让它打印其中一个或两个的随机数?
最佳答案
重复该过程随机次数:
[random.choice(['[', ']', '[]']) for _ in range(random.randint(1, 10))]
将生成一个列表,其中最多 10 个随机选择的三个可用选项,从至少一个 开始。请注意,我在这里使用了 3 个字符串的列表,而不仅仅是 2 个字符。
演示:
>>> import random
>>> [random.choice(['[', ']', '[]']) for _ in range(random.randint(1, 10))]
[']', '[]']
>>> [random.choice(['[', ']', '[]']) for _ in range(random.randint(1, 10))]
['[', '[]', ']', '[]', '[]', '[]', '[]']
如果您需要将其作为一个字符串,请使用 str.join()
连接结果:
''.join([random.choice(['[', ']', '[]']) for _ in range(random.randint(1, 10))])
请注意,这将生成一个长度在 1 到 20 个字符之间的字符串,因为您连接随机选择的最多 10 个字符串,每个字符串的长度为 1 到 2 个字符。如果您需要最多 10 个字符的字符串,请使用 random.choice('[]')
。
关于python - 我正在寻找哪个随机数来实现这个 :,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33296707/