【问题标题】:Difference in printing tuples and list in pythonpython中打印元组和列表的区别
【发布时间】:2018-07-07 14:45:33
【问题描述】:

当我在列表和元组之间更改输出类型时,一个显示输出,而另一个仅显示结果的位置。为什么会这样?

>>> symbol = '123456789'
>>> (s for s in symbol)
<generator object <genexpr> at 0x7fc0e9e2fbf8>
>>> [s for s in symbol]
['1', '2', '3', '4', '5', '6', '7', '8', '9']

【问题讨论】:

标签: python list tuples generator-expression


【解决方案1】:

(s for s in symbol) 是生成器理解。类似于:

symbol = '123456789'
def func():
    for s in symbol:
        yield s

g = func()
print(g)
<generator object func at 0x7ffff7e59410>

print(tuple(g)) 
('1', '2', '3', '4', '5', '6', '7', '8', '9')

如果您将生成器提供给list()tuple(),则生成器将运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-12-17
    • 1970-01-01
    • 1970-01-01
    • 2022-12-28
    • 1970-01-01
    • 2017-04-27
    • 1970-01-01
    • 2015-08-03
    相关资源
    最近更新 更多