gpt4 book ai didi

python - While 在 Python 中用单引号循环一个条件

转载 作者:太空宇宙 更新时间:2023-11-04 09:06:33 24 4
gpt4 key购买 nike

我在 Python 中遇到了以下代码行,我一直想知道它到底做了什么:

while '' in myList:
myList.remove('')

提前致谢。

最佳答案

它会低效地从列表中删除所有空字符串。

'' in myList 测试 '' 是否是 myList 的成员;它会遍历 myList 来扫描值。 myList.remove('') 扫描 myList 以找到列表中等于 '' 的第一个元素并将其从列表:

>>> myList ['', 'not empty']
>>> '' in myList
True
>>> myList.remove('')
>>> myList
['not empty']
>>> '' in myList
False

因此,代码重复扫描 myList 中的空字符串,每次找到一个空字符串时,都会执行另一次扫描以删除该空字符串。

myList = [v for v in myList if v != '']

将是完成相同任务的一种不同的、更有效的方法。这使用列表理解;遍历 myList 中的所有值并根据这些值构建一个列表对象,前提是它们不等于空字符串。

关于python - While 在 Python 中用单引号循环一个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20152447/

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