将一个字典添加到列表当中,在再用这个字典进行赋值给列表,得到的这个字典为None

问题遇到的现象和发生背景

在工作的时候,将一个字典添加到列表当中,在再用这个字典进行赋值给列表,得到的这个字典为None

问题相关代码,请勿粘贴截图

a = ['a':'1']
b = [1]
a = b.append(a)

运行结果及报错内容

返回的结果是None

我的解答思路和尝试过的方法

我自己的理解是: 原本的a指向字典,再将这个字典添加到b列表里面,接着用a指向该列表,这样会导致原本的字典没有引用,而新的列表又需要这个字典的引用,导致最终返回了None

我想要达到的结果

我不知道这样想的对不对,orz小伙伴解答一下

b.append(a) 没有返回值, b.append(a)是把a字典添加到b列表中,但并不返回b列表,就默认返回None赋值给a了
要把b列表赋值给a应该是

a = {'a':'1'}
b = [1]
b.append(a)
a = b
print(a)

可以看下python参考手册中的 python- 字典