Python字典数据对象拆分的简单实现方法

时间:2022-08-23 00:27:27

本文实例讲述了Python字典数据对象拆分的简单实现方法。分享给大家供大家参考,具体如下:

有朋友问了下问题: {'A1;A2': 'B','A3': 'C'}这种数据结构要拆解成{'A1':'B', 'A2': 'B', 'A3': 'C'},要如何实现? 这种问题,如果用普通的for循环来实现的话,还是有点麻烦:

?
1
2
3
4
5
6
7
>>> dct = {'A1;A2': 'B','A3': 'C'}
>>> tmp = {}
>>> for k,v in dct.items():
  for i in k.split(';'):
   tmp[i] = v
>>> print tmp
{'A1': 'B', 'A3': 'C', 'A2': 'B'}

如果用列表解析的话,可能一条语句也就可以了:

?
1
2
3
4
>>> dct = {'A1;A2': 'B','A3': 'C'}
>>> dict([(k,v) for s,v in dct.items() for k in s.split(';')])
{'A1': 'B', 'A3': 'C', 'A2': 'B'}
>>>

可谓够简洁,干练!

希望本文所述对大家Python程序设计有所帮助。

原文链接:http://blog.csdn.net/jerry_1126/article/details/78472719