我很确定这是Python中一个非常基本的概念,如果有人能帮助我理解如何以pythonic / clean方式执行以下操作,我会很高兴。我对编码很新,所以我只是举个例子。我认为我要做的事情显而易见。
for textLine in textLines:
foo = re.match('[1-100]', thing)
if foo:
list = db.GqlQuery("SELECT * FROM Bar").fetch(100)
if thing == '1':
item = list[0]
elif thing == '2':
item = list[1]
elif thing == '3':
item = list[2]
.
.
.
elif thing == '100':
item = list[99]
感谢您的帮助!
答案 0 :(得分:11)
为什么不这样做呢
item = list[int(thing) - 1]
在更复杂的情况下,您应该使用字典映射输入到输出。
答案 1 :(得分:7)
对于你展示的特定代码,pythonic的东西是用以下代码替换整个if-ladder:
item = list[int(thing)-1]
当然,您的真实代码可能不会像这样崩溃。