Вот как определяется list.__mul__
; Вы не делаете точечное умножение, а обобщаете конкатенацию списков.
Для любого списка lst
,
lst * 0 == []
lst * n == lst + lst * (n-1)
для n > 0
, где +
является списком списков. Если a
и b
являются списками, a + b
- это список, состоящий из всех элементов a
, за которыми следуют все элементы b
.
Если вы хотите numpy
массив, как подразумевается тегом, вы должны создать один.
>>> from numpy import array
>>> array([1,2,3]) * 3
array([3, 6, 9])