我在哪里可以在下面的代码上找到文档?为什么将数组乘以2,将另一个false插入数组?
print( [False] * 2 )
output: [False, False]
它使列表加倍。基本上乘以列表中的参考数量。那是预期的行为。
print(['a', 'b', 'c'] * 3)
['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c']
用于乘以list
中的数字,您需要通过它 iterate
。乘法的方式给出了您获得的输出。
python具有许多operator
方法 - 乘法方法称为 __mul__
(https://docs.python.org/3.7/library/operator.html.html#operator.poperator.poperator.poperator.poperator.poperator.<</strong>)任何类/模块都可以定义其自己的__mul__
方法,该方法将在乘以时运行(这是您使用*
时发生的情况)
如果您查看列表,则可以看到它已定义为__mul__
:
["a", "b"].__mul__
<method-wrapper '__mul__' of list object at 0x7efc163fe9d0>
您可以用一个号码调用此方法:
["a", "b"].__mul__(2)
["a", "b", "a", "b"]