我想从随机数字和字母生成一个列表。我成功了:
def rand_num():
while True:
random_char= random.choice(string.ascii_letters+string.digits)
random_lst= [random_char]
但是当我要打印此列表print random_lst
时,我会得到如下输出:
['W']
['i']
['P']
['6']
['P']
['B']
['d']
['f']
['n']
['j']
而不是:
['W','i','P'
....等等
我该怎么办?在这种情况下,.choice是错误的功能吗?
答案 0 :(得分:5)
尝试使用长度为10的列表:
random_list = [random.choice(string.ascii_letters+string.digits) for n in xrange(10)]
或者这是一个长度为10的字符串:
random_string = ''.join(random.choice(string.ascii_letters+string.digits) for n in xrange(10))
答案 1 :(得分:4)
你应该改为:
random_lst.append(random_char)