为了账号安全,请及时绑定邮箱和手机立即绑定

更改 for 循环的前一个条目

更改 for 循环的前一个条目

一只甜甜圈 2023-02-15 16:41:52
是否可以更改 for 循环,在它运行后然后在下一次迭代中返回并更改它?#the code examplescore = 50running = Truewhile running:    for rounds in range(0, 6):        for rounds in range(0, 6):           if input() == x:           score - 3           print(score)         elif input() == y:           score - 2           print(score)         elif input() == z:           score - 1           print(score)         elif input() == **change**:            #Edit previous loop input because of an error or typo(x should have been z previous iteration) #How would one make this happen?
查看完整描述

1 回答

?
慕标5832272

TA贡献1966条经验 获得超4个赞

我不认为 Loop 可以回退一次或几次迭代。问题在于您希望它返回的迭代次数。尽管可以通过反转操作来实现您的用例,但您正在这样做。


#the code example

score = 50

running = True

while running:

    for rounds in range(0, 6):

        for rounds in range(0, 6):

           if input() == x:

           score - 3

           print(score)

             elif input() == y:

               score - 2

               print(score)

             elif input() == z:

               score - 1

               print(score)

             elif input() == undoX:

               score + 3

               print(score)

             elif input() == undoY:

               score + 2

               print(score)

             elif input() == undoZ:

               score + 1

               print(score)

实现它的粗略方法是 undoX(一次操作反转)、undoX2(两次操作反转)等。 input() 的更多数据类型未知;如果它是 Integer 而不是 'undoX' 可以用 '-x' 代替。如果您想在撤消操作后保持迭代次数不变,而不是将 range(0,6) 更改为 range(0,iterations) 并写入修改后的案例;


            elif input() == undoX:

               score + 3

               iterations+1 //To keep no. of iterations intact with every undoOperation

               print(score)


查看完整回答
反对 回复 2023-02-15
  • 1 回答
  • 0 关注
  • 104 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信