【问题标题】:Defining a list in Python using the multiply operator使用乘法运算符在 Python 中定义列表
【发布时间】:2012-12-06 03:22:20
【问题描述】:

最近在Python中遇到了这样的说法:

board.append([' '] * 8)

我曾尝试使用 Google 搜索互联网以找到有关此类声明的更多信息,但我找不到。

我知道什么语句做了什么,但我不明白如何,以什么方式做,那个。

这是我第一次看到在列表中使用* 运算符。能否请您参考我可以找到有关此类陈述的更多信息的地方?

【问题讨论】:

    标签: python list append


    【解决方案1】:

    它是这样工作的:

    >>> L = [0]*10
    >>> L
    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
    >>> 
    

    如果您需要了解 Python 中的某些内容是如何工作的,请在 the Python documentation 中查找,或者自己尝试一下。

    【讨论】:

    • 感谢 Python 文档的链接。我已经在那里搜索了,但似乎我不是很喜欢。
    • @depecheSoul:正如 dkamins 所说,很难搜索符号,所以不要难过。
    【解决方案2】:

    您能否请我到一个可以找到有关此类陈述的更多信息的地方。

    大部分相关的操作符和方法都在这里定义:Sequence Types

    具体s * n定义为

    s * n, n * s -- n s 的浅拷贝连接

    这里,s 是一个序列,n 是一个数字。

    因此,[' '] * 8 返回一个包含八个' ' 的列表。

    board.append() 将结果附加到board,这可能是一个列表(列表)。

    【讨论】:

    • 谢谢,我明白 board.append() 在做什么,但对我来说最大的问题是 * 运算符,以及它在列表中的使用。感谢您的澄清。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-15
    • 1970-01-01
    • 2010-11-01
    • 1970-01-01
    相关资源
    最近更新 更多