首页 > 解决方案 > 尝试使用循环简化我的代码,但我不确定如何在循环中插入迭代器

问题描述

我想知道是否有人可以在这里帮助我。我已经尝试了几乎所有想到的东西,所以现在我对我的方法是否可行更感兴趣。

charSelect是我用来使用类构造函数设置对象的函数。w1t1是使用这个函数设置的全局对象,Status是一个打印出对象属性的函数。

我使用tryandexcept语句是因为根据用户输入要么存在w1要么t1不存在,所以我使用tryandexcept语句来避免属性错误。可能是一个非常糟糕的解决方法,但我想不出更好的方法来处理它。

基本上我试图简化一长串这样的陈述:

try:
    charSelect.w1.Status()
except:
    charSelect.t1.Status()

try:
    charSelect.w2.Status()
except:
    charSelect.t2.Status()

try:
    charSelect.w3.Status()
except:
    charSelect.t3.Status()

进入这样的循环:

i = 1
while (i <= 3):
    try:
        charSelect.w[i] .Status()
    except:
        charSelect.t[i].Status()
i += 1

标签: python

解决方案


推荐阅读