Python: 乘以一个布尔数组,文档

Python: mutiplying a boolean array, documentation

在哪里可以找到有关以下代码的文档?为什么将数组乘以 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#operator.mul)任何class/module都可以定义自己的__mul__ 方法,当它相乘时将是 运行 (当你使用 * 时会发生什么)

如果您查看列表,您会发现它已定义 __mul__

 ["a", "b"].__mul__
 <method-wrapper '__mul__' of list object at 0x7efc163fe9d0>

你可以用一个号码调用这个方法:

["a", "b"].__mul__(2)
["a", "b", "a", "b"]