gpt4 book ai didi

python - 将 args 转换为平面列表?

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

我知道这与其他几个问题非常相似,但我不能完全让这个功能正常工作。

def flatten(*args):
return list(item for iterable in args for item in iterable)

我正在寻找的输出是:

flatten(1) -> [1]
flatten(1,[2]) -> [1, 2]
flatten([1,[2]]) -> [1, 2]

我从另一个 SO 答案中获取的当前函数似乎根本没有产生正确的结果:

>>> flatten([1,[2]])
[1, [2]]

最佳答案

为了快速解决,只需使用第二个函数并使其递归。

def flatten(*args):
output = []
for arg in args:
if hasattr(arg, '__iter__'):
output.extend(flatten(*arg))
else:
output.append(arg)
return output

关于python - 将 args 转换为平面列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2536197/

24 4 0
文章推荐: web - 如何关闭testcafe runner
文章推荐: javascript - 提交前将 Lat Lng 值设置到隐藏字段中
文章推荐: javascript - contenteditable
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com