如何创建一个预置多个相同元素的数组

举例来说,假如想得到一个创建时就有且仅有10个1的数组,以便接下来操作,应该如何(不使用for循环一个个加的话)

不使用for的就只能是
li = [1] * 10
列表 * 数值是把列表中的元素重复数值的次数

但要注意这里列表中的1是数值属于不可变类型,这样没什么问题
但如果值是字典或列表等可变类型就不行了。

li = [{"a":1}] * 10
因为字典是按地址传递的,当把同一个字典多次添加到列表中时,列表中每个字典都是同一个地址。
改变其中一个字典的属性,列表中所有字典都会一起改变。
所以只有是在循环中每次都创建一个新的字典,让列表中每个字典都是不同的地址。

li = [{"a":1} for i in range(10)]

列表?
l = [1 for i in range(10)]
或者
l = [1]*10