【发布时间】:2018-08-14 16:25:36
【问题描述】:
当我跑步时
a = ["I","love","you"]
a = {(word) for word in a}
print a
我得到了这个结果
set(['I', 'you', 'love'])
这就是我所期望的。
但是当我跑步时
a = ["I","love","you"]
a = {((word) for word in c)for c in a}
print a
我得到了一些意想不到的结果:
set([<generator object <genexpr> at 0x1004d5280>, <generator object <genexpr> at 0x1004d5320>, <generator object <genexpr> at 0x1004d5370>])
而我所期待的是
set(['e','I','u','o','v','l','y')
谁能告诉我导致这个问题的原因?
【问题讨论】:
-
您到底想得到什么?您的预期结果是否有额外的
[或缺少]?如果你只想要所有字母的集合,你会做{c for w in a for c in w}。