2015-02-10 55 views
1

我想创建使用下面的代码字符的列表的列表:生成字符

import random 
import string 
def random_char(): 
     return ','.join(random.sample(b,26)) 

a=[] 
b=[] 
b=string.ascii_uppercase 
a=[random_char()] 
print(a) 
print(a[0]) 

输出:

['P,K,R,E,J,W,X,B,C,G,N,Z,L,S,H,Q,D,I,M,U,O,A,Y,F,V,T'] 
P,K,R,E,J,W,X,B,C,G,N,Z,L,S,H,Q,D,I,M,U,O,A,Y,F,V,T 

当我尝试打印[0],整个列表打印出来。我如何将这些字符作为列表的单独元素分开?

+0

你他们加入到一个字符串。不要这样做,如果你想让他们分开。 – interjay 2015-02-10 01:15:57

+0

你能告诉我该怎么做吗? – lavish 2015-02-10 01:16:48

+0

删除'','。join'。 – interjay 2015-02-10 01:18:35

回答

2

','.join(random.sample(b,26))创建单个字符串。所以你的列表有一个单独的元素,就是那个字符串。

如果你想有一个列表只返回random.sample(b,26),并分配给a输出:

def random_char(): 
     return random.sample(b,26) 
a = random_char() # now a list of separate elements 
print(a) 
['S', 'I', 'P', 'O', 'L', 'Y', 'J', 'T', 'C', 'F', 'Z', 'A', 'B', 'M', 'V', 'D', 'K', 'H', 'X', 'N', 'Q', 'U', 'G', 'W', 'E', 'R'] 

print(a[0]) 
S 
+0

你能告诉我如何将它们存储为单独的元素? – lavish 2015-02-10 01:17:46