Skip to main content
 首页 » 编程设计

Python之为什么我不能在 print 函数中使用生成器

2025年05月04日13zdz8207

我的代码:

a=[3,3,3,3,3,3,45,4,5,2,2,4,3,3,3,3] 
print(x for x in set(a)) 

输出:

<generator object <genexpr> at 0xb62dccec> 

为什么?以及如何使用一行打印 set ?

请您参考如下方法:

您不需要发电机。只需按原样打印集合:

print(set(a)) 

如果你想对每个项目做一些事情,使用

print(*(something(x) for x in set(a)), sep=', ')  # unpacks generator, bare 

甚至

print({something(x) for x in set(a)})  # creates new set, surrounded by {} 

或

print([something(x) for x in set(a)])  # creates new list, surrounded by []