【发布时间】:2020-07-27 20:26:50
【问题描述】:
如果我想创建一个一定长度的空列表,如何创建它而无需手动输入括号。例如:如果我想要一个长度为 32 的列表,但我不想在第 32 个元素之前输入 [ , , , , , ...] ,我该怎么做?
谢谢。
【问题讨论】:
如果我想创建一个一定长度的空列表,如何创建它而无需手动输入括号。例如:如果我想要一个长度为 32 的列表,但我不想在第 32 个元素之前输入 [ , , , , , ...] ,我该怎么做?
谢谢。
【问题讨论】:
你可以直接这样做-
empty_list = [None]*32
print(empty_list)
输出:
[None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None]
上面将创建一个大小为 32 的列表,其中列表的每个元素都初始化为 None。
你也可以这样做-
empty_list = [None for _ in range(32)]
上面的代码也会给出与之前相同的结果
【讨论】:
a = [[]] * 10 实际上会有一个列表指向同一个空列表 10 次。显示的两种方法并不总是提供相同的结果,仅使用None。
怎么样:
a = numpy.empty(32, str).tolist()
或:
a = [‘’]*32
【讨论】: