Python笔记之字典循环

Python笔记之字典循环

 

1.问题

Python是一门比较好入门的编程语言,但是入门简单,当然坑也是有的,今天就来介绍一个我遇到的坑吧,也是很简单的一个,就是当时脑子有点转不过弯来了。

先看代码:

1 dict = {}
2 lis = []
3 for i in range(10):
4     dict[i] = i + 1
5     lis.append(dict)

我当时需要这段代码实现的功能是:利用字典数据结构存储每一个细节数据,然后放到list数据结构中,但是,当输出的时候,就出现了下图中的结果。

问题的根源是,Python中的字典数据结果和list数据结果的修改方式是不同的,对字典数据结构执行该语句:dict[i] = i + 1,就相当于list数据结构中的append语句,相当于是新加一个数据的意思,当时我真是,怎么都绕不过来,想了很久,然后还是想通了。>_<

2.纠正:

如果想实现我说的那种功能,应该全局变量字典数据结果放在for循环里面,让它变成一个局部变量,这样每一次for开始都当字段初始化。

1 lis = []
2 
3 for i in range(10):
4     dict = {}
5     dict [i] = i + 1
6     lis.append(dict)

这样就能实现了,我们来看运行效果:

猜你喜欢

转载自www.cnblogs.com/jums/p/10599564.html
今日推荐