我的随机字符串函数:
def random_string(chars=string.ascii_letters + string.digits):
size = random.randrange(10, 15)
return str(''.join(random.choice(chars) for _ in range(size)))
我希望它生成长度在10到15个字符之间的随机字符串,这就是我完成size = random.randrange(10, 15)
的原因。但是,它并没有遵守这条规则。
此外,大约20%的时间,random_string()
只返回一个空字符串:''
。不知道为什么会这样。
任何人都知道如何解决这些问题?
答案 0 :(得分:0)
使用以下程序进行的严格测试表明该功能正常工作:
import random, string
def random_string(chars=string.ascii_letters + string.digits):
size = random.randrange(10, 15)
return str(''.join(random.choice(chars) for _ in range(size)))
for i in range(10000):
x = random_string()
if not (10 <= len(x) <= 15): #Check that the length of the
#generated string is within range
print("Failed: len={0}".format(len(x)))
print("Tests completed")