sách gpt4 ai đã đi

python - 嵌套生成器到嵌套列表

In lại 作者:行者123 更新时间:2023-12-05 03:55:11 26 4
mua khóa gpt4 Nike

我有时会遇到这样一种情况:我正在使用一个生成器,它的成员本身就是生成器(对于 n 个级别,依此类推)。

调试时,在无用中打印这些结果

显然我可以做到print(list(my_gen))将顶层转换为列表。但后来我得到

[, , ]

同样没用。

是否有一个简单的命令来打印一直向下求值的嵌套生成器?

我知道我可以编写一个递归函数来执行此操作,但我正在寻找一种简单的方法。

1 Câu trả lời

您可以编写一个递归函数 来评估N 级嵌套生成器。我不认为为此存在内置函数。

import types

def _gen(gen):
if not isinstance(gen,types.GeneratorType):
return gen
khác:
return [_gen(i) for i in gen]

my_gen=((j for j in range(i)) for i in range(10))

print(_gen(my_gen))

[[],
[0],
[0, 1],
[0, 1, 2],
[0, 1, 2, 3],
[0, 1, 2, 3, 4],
[0, 1, 2, 3, 4, 5],
[0, 1, 2, 3, 4, 5, 6],
[0, 1, 2, 3, 4, 5, 6, 7],
[0, 1, 2, 3, 4, 5, 6, 7, 8]]

关于python - 嵌套生成器到嵌套列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60349967/

26 4 0
Bài viết được đề xuất: Kubernetes 部署 - 状态副本和规范副本之间的区别
Bài viết được đề xuất: asp.net-core - 使用 ASP.NET Core 启用远程错误
Bài viết được đề xuất: c# - 在 .NET 中安排具有优先级的任务
Bài viết được đề xuất: c - Linux 管道的 write() 超时
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com