gpt4 book ai didi

python - 在列表列表中查找所有 None 的最 Pythonic 方法是什么?

转载 作者:行者123 更新时间:2023-12-02 07:35:00 27 4
gpt4 key购买 nike

有没有比这段代码更好的 Pythonic 方法来查找列表列表中的所有 None ?

    def find_nones_locations(lst):
none_locations = []
for i in range(len(lst)):
for j in range(len(lst)):
if lst[i][j] is None:
none_locations.append((i,j))
return none_locations

最佳答案

您可以使用列表理解一次性完成此操作,但我不确定它是否一定比清晰的循环更好:

none_locations = [(i, j) for i, row in enumerate(lst) for j, elem in enumerate(row) if elem is None]

推导式中的嵌套循环遵循与纯代码中相同的顺序。没有充分的理由不使用普通循环:

none_locations = []
for i, row in enumerate(lst):
for j, elem in enumerate(row):
if elem is None:
none_locations.append((i, j))

对代码的唯一潜在改进是使用 enumerate发电机。任何时候你需要一个可迭代对象的索引和值,这通常是获取它的Python方式。

关于python - 在列表列表中查找所有 None 的最 Pythonic 方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61719913/

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