2017-04-22 112 views
-1

我需要打印并在python列表中添加所有值的列表,我无法获取它。你能帮助我吗?我只是将一个系统数据与另一个系统数据进行比较,并确定每个字段的不匹配。在python中追加forloop的字符串

示例,表为kid_id,姓名,年龄,性别,地址在2个不同的系统中。我需要确保将所有孩子的数据从1data正确地移动到2data系统。 EMP_ID像1,2,3,4,5,6

2_data = self.get2Data(kid_id) 
1_data = self.get1Data(kid_id) 
for i in range(len(1data)): 
    for key, value in 1data[i].items(): 
     if 1data[i][key] == 2data[i][key]: 
      result = str("LKG") + ","+ str(kid_id) +","+ str("PASS") + "," + str(key) 
     else: 
      result = str("LKG") + "," + str(kid_id) + "," + str("FAIL") + "," + str(key) 
     MatchResult = result.split() 
     print MatchResult 
print "***It is Done*****" 

目前我的输出类似,

['LKG,100,PASS,address'] 
['LKG,102,FAIL,dob'] 
['LKG,105,FAIL,gender'] 

,但我需要的方式,

(['LKG,100,PASS,address'],['LKG,102,FAIL,dob'],['LKG,105,FAIL,gender']) 

or 
[('LKG,100,PASS,address'),('LKG,102,FAIL,dob'),('LKG,105,FAIL,gender')] 

代码详细信息:上述代码将比较两个系统数据,并通过打印上述格式来显示通过和失败的情况。如果您看到上述结果,则打印地址为pass和dob为失败,性别为失败,意味着数据不匹配仍然是dob和gender字段,代表持有102和105的小孩。

+0

做一个结果列表,在每个matchresult附加它的结果。结果将是你正在寻找的答案。 – JkShaw

回答

0

移动列表变量声明循环并将其初始化为空列表,然后每次追加结果。

2_data = self.get2Data(kid_id) 
1_data = self.get1Data(kid_id) 
MatchResult=[] 
for i in range(len(1data)): 
    for key, value in 1data[i].items(): 
     if 1data[i][key] == 2data[i][key]: 
      result = str("LKG") + ","+ str(kid_id) +","+ str("PASS") + "," + str(key) 
     else: 
      result = str("LKG") + "," + str(kid_id) + "," + str("FAIL") + "," + str(key) 
     MatchResult.append(result.split()) 
print MatchResult 
print "***It is Done*****" 
+0

谢谢。它按我的预期工作。 – Ramesh

+0

很高兴工作。请接受为答复。 –