gpt4 book ai didi

python for循环除了

转载 作者:行者123 更新时间:2023-12-02 15:23:34 26 4
gpt4 key购买 nike

我有一个 list

my_list = ['a', 'b', 'c']
for my_value is my_list except'a':
print(my_value)

这里我想遍历所有值并打印它们 expet 'a'

我该怎么做?我知道可以使用 if 条件来完成,但我想知道我是否可以在一行中完成 if for my_value in my_list except 'a'

最佳答案

可以在一行中完成,尽管这样做是可怕的编程风格。

for value in [ v for v in my_list if v != 'a' ]

我推荐的是两行。 if ... : continue 立即开始循环的下一次迭代,因此循环体的其余部分将被跳过。

for value in my_list:
if value == 'a': continue
# rest of loop code

还有一个优雅的单行代码并不能完全解决所提出的问题。这是

for value in set(my_list) - {'a'}

它不是答案的原因是 (a) 集合是无序的,因此 for 循环不一定按照它们在 my_list 中存储的顺序处理 my_list 的元素。至关重要的是 (b),一个集合不能包含重复项,所以 set(['c','d','c']) == {'c','d' } 并且循环只会处理重复一次,而不是多次。有时,这是一个相当理想的结果。

关于python for循环除了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32732214/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com