- 主题:list comprehension的问题
新版里边list comprehension是个generator吧?
这个对象好像不能重复读取?
简化复现代码:
e="A,B,C"
ex=(e for e in e.split(","))
print(type(ex))
print(ex)
print(list(ex))
print(list(ex))
运行结果
<class 'generator'>
<generator object <genexpr> at 0x100202900>
['A', 'B', 'C']
[]
第二次print(list(ex))输出为空白
--
FROM 222.71.112.*
中括号的是list comprehension
小括号的是generator
【 在 JulyClyde 的大作中提到: 】
: 新版里边list comprehension是个generator吧?
: 这个对象好像不能重复读取?
: 简化复现代码:
: ...................
--
FROM 47.75.99.*
嗯。我简化过度了,导致提问有错
【 在 wincss 的大作中提到: 】
: 中括号的是list comprehension
: 小括号的是generator
--
FROM 222.71.112.*
我知道了
我最开始写的是方括号,后来出于洁癖,我就改成圆括号了,妄图把它变成tuple
结果其实是个generator
现在改成了tuple(...)之后就好了
【 在 wincss 的大作中提到: 】
: 中括号的是list comprehension
: 小括号的是generator
--
修改:JulyClyde FROM 222.71.112.*
FROM 222.71.112.*