我有一个python词典列表。字典包含我需要为所有字典更新的“sequenceId”,确保每个sequenceId是均匀的且不可重复。 为了更新SequenceID,我使用了一个for循环,但其行为并不是我所期望的
seqId = 0
for index in range(20):
FinalNodes[index]['sequenceId'] = seqId
seqId +=2
print(FinalNodes[7]['sequenceId'])
预期产量:-14
观察到的输出:-38
这是完整的代码snipet
import json
import time
with open('test.json', "r") as json_file:
data = json.load(json_file)
numberofJobs = 10
NodesList = data['nodes']
nNodes = len(NodesList)
#Divide all node into first, main and last
MainNodes = NodesList[1:nNodes-1]
FirstNode = NodesList[0:1]
LastNode = NodesList[nNodes-1:nNodes]
#prepare final nodes
FinalNodes = FirstNode.copy()
for i in range(numberofJobs):
FinalNodes.extend(MainNodes)
FinalNodes.extend(LastNode)
print(FinalNodes[7]['sequenceId'])
seqId = 0
for index in range(0,20):
FinalNodes[index]['sequenceId'] = seqId
seqId +=2
print(FinalNodes[index]['sequenceId'],index)
print(FinalNodes[7]['sequenceId'])
回路内的输出:-
0 0
2 1
4 2
6 3
8 4
10 5
12 6
14 7
16 8
18 9
20 10
22 11
24 12
26 13
28 14
30 15
32 16
34 17
36 18
38 19
请检查您的
FinalNodes
字典,因为我运行了相同的代码,它工作正常相关问题 更多 >
编程相关推荐