import random
def generate():
s01="("
s02=")"
string_list=[]
list_quan=10
i=0
while i<list_quan:
new_s=[]
x=random.randint(5,11)
l=0
while l<x:
option=random.randint(0,2)
if option==0:
new_s.append(s01)
else:
new_s.append(s02)
l+=1
news="".join(new_s)
string_list.append(news)
i+=1
print(string_list)
return string_list
#lis=generate()
def check(lis):
qualifieds={}
for i in lis:
n=0
j=0
while j<len(i):
if i[j]=="(":
n+=1
j+=1
else:
n-=1
j+=1
if n<0:
qualifieds[i]=False
break
if j==len(i) and n>0:
qualifieds[i]=False
elif j==len(i) and n==0:
qualifieds[i]=True
print(qualifieds)
lis=generate()
check(lis)
l=["(())()","((()))","(()()())((()))"]
check(l)
圆括号的随机生成以及判断是否成对出现
最新推荐文章于 2021-02-13 11:25:31 发布
本文介绍了一个Python程序,该程序首先生成包含随机数量左括号和右括号的字符串列表,然后检查这些字符串是否形成正确的括号配对。通过随机数生成不同长度的括号序列,并使用迭代算法验证括号的正确闭合,最终返回每个字符串的合格状态。
51

被折叠的 条评论
为什么被折叠?



