Skip to main content
 首页 » 编程设计

python之如何在 python 中创建一个以随机字母作为键且没有重复项的字典

2025年05月04日22落叶无声

这是我的代码:

我创建了一些随机字母并将它们存储在变量中,然后我将这些变量用作字典中的键。问题是由于随机字母, key 是重复的。我该如何解决?

a = random.choice(string.ascii_letters).lower() 
b = random.choice(string.ascii_letters).lower() 
            . 
            . 
            . 
z = random.choice(string.ascii_letters).lower() 
 
alphabet =  
{'a':a,'b':b,'c':c,'d':d,'e':e,'f':f,'g':g,'h':h, 
'i':i,'j':j,'k':k,'l':l,'m':m,'n':n, 
'o':o,'p':p,'q':q,'r':r,'s':s,'t':t, 
'u':u,'v':v,'w':w,'x':x,'y':y,'z':z}  

请您参考如下方法:

不要使用单独的 choice() 调用。使用 random.sample() , 从 string.ascii_lowercase 中挑选而不是小写:

# pick 10 random keys, all unique 
keys = random.sample(string.ascii_lowercase, 10) 

如果您所做的只是打乱所有 26 个字母,则使用 random.shuffle():

# list of 26 letters in random order 
random_letters = list(string.ascii_lowercase) 
random.shuffle(random_letters) 
# map the alphabet to the random letters 
alphabet = dict(zip(string.ascii_lowercase, random_letters))