关于python字典的问题

本帖最后由 predatorymh 于 2011-06-13 16:07 编辑

dict1={a:['b','c','d','e','f']}
dict2={a:['b','h','d','e','r']}

我想挑出两个字典值单个比较后不同的位子写入excel,样子大概就像下面这样:
b h d e r 1,4
写入值,在最后一个单元格写入它和dicta不同的值的位置,当中有逗号分隔
我的代码:
for key in Dict2.keys():
    newline=[]
    if Dict1.get(key):
        for n in range(5):
            if Dict1.get(key)[n]!=Dict2.get(key)[n]:
                newline=Dict2.get(key)
                newline+=[n]#就是这步不知怎么修改
                liebiao1+=[newline]

作者: predatorymh   发布时间: 2011-06-13

试试这个,也许可以解决问题
  1. dict1={'a':['b','c','d','e','f'],'b':[1,2,3,4,5]}
  2. dict2={'a':['b','h','d','e','r'],'b':[1,2,4,5,6]}
  3. liebiao1=[]
  4. for key in dict2.keys():
  5.     newline=[]
  6.     if dict1.get(key):
  7.         for n in range(5):
  8.             if dict1.get(key)[n]!=dict2.get(key)[n]:
  9.                 val=dict2.get(key)
  10.                 newline+=[n]
  11.     if newline:
  12.         tmpstr=repr(newline)[1:-1]
  13.         liebiao1+=[val+[tmpstr]]
复制代码

作者: pytoon   发布时间: 2011-06-15