gpt4 book ai didi

Python,生成随机的括号字符串

转载 作者:太空宇宙 更新时间:2023-11-03 12:24:17 24 4
gpt4 key购买 nike

例如,我希望生成方括号的随机长度和模式,[]][[]][[][[]][]

到目前为止,我已经设法让我的程序随机生成括号,但生成括号的次数是随机的,所以目前我的程序给我的结果如下,

[] [] [] [] [] []

[] [] []

[] [] [] [] []

所以括号内没有随机性,只有显示的括号数量是随机的。

我想知道如何使括号的顺序与显示的括号数量一样随机。

到目前为止,这是我的代码,

import random
import string

def randomGen(N):
return random.randint(1,N)

char1 = '['
char2 = ']'
finalist = []
newList = []
newList2 = []

newValue = randomGen(99)

for i in range(newValue):
newList = char1
newList2 = char2
finalist.append(newList + newList2)

for everChar in finalist:
print everChar,

谢谢。

最佳答案

您可以使用 random.sample 来选择放置位置的索引,例如,左括号。然后在其他地方放置右括号:

In [119]: import random

In [122]: N = 10

In [125]: idx = set(random.sample(range(N), N//2))

In [126]: idx
Out[126]: {0, 1, 4, 5, 7}

In [127]: ''.join(['[' if i in idx else ']' for i in range(N)])
Out[127]: '[[]][[][]]'

根据您的示例,我假设您需要相等数量的左右括号。如果没有,请使用 jonrsharpe 的解决方案。

关于Python,生成随机的括号字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22019640/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com