-1
import random

alphabet = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']

iterations = 1

running = True

def random_picker():

random_choice = random.choice(alphabet)

iterations =+ 1

print(random_choice)
while running == True:

    if iterations <=26:
        random_picker()
    else:
        running == False

我试图通过每次迭代获得一个不同的随机字母,通过所有 26 个。选择的每个字母都需要更新random_choice变量。

4

1 回答 1

1

您的程序将继续循环,直到返回 26 个字母。shuffle由于您希望在每次迭代中使用不同的字母,因此数组并循环遍历它可能更容易,alphabet而不是尝试在每次迭代中选择一个随机字母:

random.shuffle(alphabet)

Paul M. EDIT - 这是一个示例,说明如何使用它来达到预期的效果:

from string import ascii_lowercase
from random import shuffle

alphabet = list(ascii_lowercase)
shuffle(alphabet)

for char in alphabet:
    print(char)

输出:

j
m
z
w
k
y
d
f
l
c
u
b
t
s
e
p
x
g
a
r
n
h
i
q
o
v
>>> 
于 2020-11-02T19:23:39.210 回答