gpt4 book ai didi

python - 从列表中获取最后一个非无值的 Pythonic 方法是什么

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

以下代码从日期值的有序列表中获取最后一个现值:

def test_get_last_value(self):
dated_optional_values = [(datetime.datetime(2015, 2, 23), None),
(datetime.datetime(2015, 2, 24), 1.23),
(datetime.datetime(2015, 2, 25), None),
(datetime.datetime(2015, 2, 26), 2.34),
(datetime.datetime(2015, 2, 27), None),
]
present_values = [dated_optional_value[1] for dated_optional_value in dated_optional_values
if dated_optional_value[1] is not None]
last_present_value = present_values[-1]
print('last_present_value=', last_present_value)

我可以轻松地编写一个从列表末尾开始并迭代返回直到找到值的循环。

是否有更 Pythonic 的方法来实现它?

最佳答案

next((dop[1] for dop in reversed(date_optional_values) if dop[1] is not None), None)

您可以将最后的 None 替换为您喜欢的任何其他值,以返回每个值为 None 的情况。或者在它们都是 None 的情况下省略该参数以抛出异常。

关于python - 从列表中获取最后一个非无值的 Pythonic 方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28774024/

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