从随机的ascii字母和数字制作一个列表

use*_*923 0 python string random list choice

我想从随机数字和字母生成一个列表.我成功了:

def rand_num():

    while True:
        random_char= random.choice(string.ascii_letters+string.digits)

        random_lst= [random_char]
Run Code Online (Sandbox Code Playgroud)

但是当我想要打印这个列表时,print random_lst我会得到如下输出:

['W']
['i']
['P']
['6']
['P']
['B']
['d']
['f']
['n']
['j']
Run Code Online (Sandbox Code Playgroud)

代替:

['W','i','P'.... 等等

我该怎么办?在这种情况下,.choice是错误的功能吗?

Joh*_*ica 5

试试这个长度为10的列表:

random_list = [random.choice(string.ascii_letters+string.digits) for n in xrange(10)]
Run Code Online (Sandbox Code Playgroud)

或者这是一个长度为10的字符串:

random_string = ''.join(random.choice(string.ascii_letters+string.digits) for n in xrange(10))
Run Code Online (Sandbox Code Playgroud)