小编Bil*_*gan的帖子

Python3字典值被覆盖

我的字典有问题。我正在使用Python3。我敢肯定我只是看不到一些简单的东西。

我正在从文件中读取行以创建字典。每行的前3个字符用作键(它们是唯一的)。从那里,我根据该行其余部分的信息创建一个列表。每4个字符组成一个列表。创建列表后,我将目录作为值写入目录,并将行的前三个字符作为键。

问题是,每次我向字典中添加新的key:value对时,它似乎都会覆盖(或更新)先前编写的字典条目中的值。键很好,只是更改了值。因此,最后,所有键的值都等于文件最后一行的列表。

我希望这很清楚。任何想法将不胜感激。

下面的代码片段

formatDict = dict()  
sectionList = list()  
for usableLine in formatFileHandle:  
    lineLen = len(usableLine)  
    section = usableLine[:3]  
    x = 3  
    sectionList.clear()  
    while x < lineLen:  
        sectionList.append(usableLine[x:x+4])  
        x += 4
    formatDict[section] = sectionList  
for k, v in formatDict.items():  
    print ("for key= ", k, "value =", v)  
formatFileHandle.close()  
Run Code Online (Sandbox Code Playgroud)

python dictionary list python-3.x

2
推荐指数
1
解决办法
609
查看次数

标签 统计

dictionary ×1

list ×1

python ×1

python-3.x ×1