二维数组初始化python

2024-04-24 23:21:05 发布

您现在位置:Python中文网/ 问答频道 /正文

这两个在python中不是一样的吗?你知道吗

1。你知道吗

all = [[]] * 10
all[3].append(33)

> [[33], [33], [33], [33], [33], [33], [33], [33], [33], [33]]

2。你知道吗

all = [[] for i in range(10)]
all[3].append(33)
> [[], [], [], [33], [], [], [], [], [], []]

最初,我尝试了第一个,同时期望第二个的输出,但令人惊讶的是,这没有发生。为什么在第一个代码段中初始化相同的引用?你知道吗


Tags: infor代码段rangeallappend