我有一个清单,我知道有些项目是不需要打印的,我正试图通过if语句做到这一点。。。但是它变得非常复杂,那么有没有办法在if语句中包含多个索引而不重写整个语句呢。
像这样的东西?:
if x == chart[0,2,4]
我举了一个例子:
chart = ['milk', 'soda', 'cookies', 'yogurt', 'rug']
for x in chart:
if x == chart[0] or x == chart[2] or x == chart[4]:
continue
else:
print(x)
Tags:
另一个:
使用
enumerate()
这样就可以得到索引,然后就可以检查了。在尽管我支持@Barmar的建议,但我认为当
charts
中有非唯一项时,该解决方案存在一个循环漏洞。例如下面的代码将处理
^{pr2}$charts
的非唯一项,并提供问题所要求的内容。在您可能希望根据以下内容选择或删除元素:
如果它有一个项目列表,您可以提供一个要丢弃的项目列表,其中有些项目甚至可能不是{}的一部分。基于索引检查有效性的条件语句要求您事先知道索引。在
注意并不是所有的项目(
bananas
)和所有索引(9
)都在列表中,chart
。在如果您想根据索引列表放弃:
user_discard_index
,那么解决方案是@Barmar建议的。在但是,如果
charts
具有非唯一项,则可能会导致问题,例如:在这种情况下,如果您对删除}。但是,如果您列出要删除的唯一项的列表,则可以解决此问题。除了@Barmar所建议的之外,下面的代码段处理这个场景。在
milk
更感兴趣,那么指定discard_index = (0, 2, 4)
将错过第二次出现的{请注意,如果用户提供了要删除的项目列表(而不是索引),则上面的代码也可以工作。请参阅下面的代码块。在
相关问题 更多 >
编程相关推荐