gpt4 book ai didi

python 检查列表中的字符串?

转载 作者:行者123 更新时间:2023-11-28 19:32:11 25 4
gpt4 key购买 nike

我正在尝试遍历一个列表,检查列表中的每个字符串是否有一个字符。

test = [str(i) for i in range(100)]

for i in test:
if '0' or '4' or '6' or '8' in str(i):
test.remove(i)

我认为这会很好,但是,列表是这样的:

[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, 99]

“2”被移除但“41”没有被移除?我注意到它只有偶数,但不知道为什么。

最佳答案

您的代码有两个问题。首先是您在迭代列表时修改列表。第二个是您以错误的方式使用了 or 运算符——if 语句中的条件将始终为 True

这是一个固定版本:

test = [i for i in range(100) if set("0468").isdisjoint(str(i))]

关于python 检查列表中的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11055809/

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