为什么每次尝试都只打印一个字母?

时间:2017-11-17 16:00:12

标签: python

from random import choice
print ("Enigma") 

list = ['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']
range (0,25) 

cha2 = choice(list)



complete = choice(list) 

for x in range (0, 90000):
    ("Type alphabet") 
    cha1=input() 
    print (complete) 

当我运行它并输入字母时,第一次输出相同的字母输出。但是我想让它在每次输入字母时输出不同的随机字母。感谢

2 个答案:

答案 0 :(得分:0)

Chris_Rands在评论中说得对......

Private Sub Generateresults_Click() Dim x As Integer Dim i As Integer Dim j As Integer Dim p As Integer p = Sheets("Training1A").UsedRange.Rows.Count Sheets("Results").Range("A2:P" & p).ClearContents x = 2 For i = 0 To Me.Listtest.ListCount - 1 If Me.Searchoption = "AND" Then If Me.Listtest.Column(1, i) = Search1 And Me.Listtest.Column(2, i) = Search2 Then For j = 0 To 9 Sheets("results").Cells(x, j + 1) = Me.Listtest.Column(j, i) Next j x = x + 1 Else x = x End If ElseIf Me.Searchoption = "OR" Then If Me.Listtest.Column(1, i) = Search1 Or Me.Listtest.Column(2, i) = Search2 Then For j = 0 To 9 Sheets("results").Cells(x, j + 1) = Me.Listtest.Column(j, i) Next j x = x + 1 Else x = x End If ElseIf Me.Searchoption = "ALL" Then For j = 0 To 9 Sheets("results").Cells(x, j + 1) = Me.Listtest.Column(j, i) Next j x = x + 1 Else x = x **If Searchoption = "" Or Search1 = "" Or Search2 = "" Then MsgBox "Select an option" End If** End If Next i End Sub 是选择要返回的字母的行,而您只运行一次。如果您希望每次都运行它,则需要将其放在complete = choice(list)循环中:

while

答案 1 :(得分:0)

回答:"我希望每次输入字母时输出一个不同的随机字母"

从上面开始,你将检查cha1与完整,虽然它们是相同的,继续调用选择更新

cha1=input() 
complete = choice(list)
while cha1 == complete:
    complete = choice(list)