gpt4 book ai didi

python - 无缝处理可迭代和不可迭代

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

你能告诉我如何优化以下代码吗?

def f(y, list_or_elem):
if getattr(list_or_elem, '__iter__'):
y = max(y, *list_or_elem)
else:
y = max(y, list_or_elem)

最佳答案

最好的优化是避免将“列表或单个元素”作为参数这样的愚蠢行为。但是,如果您坚持,最好使用 try/except 尽快消除异常并确保它是可迭代的:

try: iter(list_or_elem)
except TypeError: iterable = [list_or_elem]
else: iterable = list_or_elem
y = max(y, *iterable)

关于python - 无缝处理可迭代和不可迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2824612/

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