python 字典套字典或列表的示例

文件f1

A 1 a
A 1 b
A 2 C
B 2 a
B 2 b

生成如下字典:

tdict={'A':{1:['a','b'], 2:['C']}, 'B':{2:['a','b']} }
In [22]: tdict={}

In [23]: f=open('f1')

In [24]: while True:
  ...:   line=f.readline().strip()
  ...:   if not line:
  ...:     break
  ...:   pos1=line.split()[0]
  ...:   pos2=line.split()[1]
  ...:   pos3=line.split()[2]
  ...:   if pos1 not in tdict:
  ...:     tdict[pos1]={}
  ...:     tdict[pos1][pos2]=[pos3]
  ...:   else:
  ...:     if pos2 not in tdict[pos1]:
  ...:       tdict[pos1][pos2]=[pos3]
  ...:     else:
  ...:       tdict[pos1][pos2].append(pos3)
  ...:

In [25]: f.close()

In [26]: tdict
Out[26]: {'A': {'1': ['a', 'b'], '2': ['C']}, 'B': {'2': ['a', 'b']}}

In [27]: tdict['B']['2']
Out[27]: ['a', 'b']

以上这篇python 字典套字典或列表的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • python 中字典嵌套列表的方法

    如下所示: >>> dict={} >>> dict['list']=[] >>> dict['list'].append([1,2,3,4]) >>> dict['list'].append([5,6,7]) >>> dict['list'].append([7,8,9,0,10]) 输出字典: >>> dict {'list': [[1, 2, 3, 4], [5, 6, 7], [7, 8,

  • Python3实现的字典、列表和json对象互转功能示例

    本文实例讲述了Python3实现的字典.列表和json对象互转功能.分享给大家供大家参考,具体如下: python3可以使用json模块操作json json.dumps(): 对json进行编码,对应php的json_encode() json.loads(): 对json进行解码,对应php的json_decode() test.py #!/usr/bin/python3 import json #python字典类型转换为json对象 data = { 'id' : 1, 'name' :

  • Python字典及字典基本操作方法详解

    本文实例讲述了Python字典及字典基本操作方法.分享给大家供大家参考,具体如下: 字典是一种通过名字或者关键字引用的得数据结构,其键可以是数字.字符串.元组,这种结构类型也称之为映射.字典类型是Python中唯一內建的映射类型,基本的操作包括如下: (1)len():返回字典中键-值对的数量: (2)d[k]:返回关键字对于的值: (3)d[k]=v:将值关联到键值k上: (4)del d[k]:删除键值为k的项: (5)key in d:键值key是否在d中,是返回True,否则返回Fals

  • Python里字典的基本用法(包括嵌套字典)

    Python字典的基本用法 创建字典: myDict1 = { '薛之谦':'我叫薛之谦', '吴青峰':'我叫吴青峰', '李宇春':'我叫李宇春', '花花':'我叫花花', '赵雷':'我叫赵雷' } emptyDict = {} myDict2 = dict(薛之谦 = '我叫薛之谦',吴青峰 = '我叫吴青峰') myDict3 = dict((('薛之谦','我叫薛之谦'),('吴青峰','我叫吴青峰'))) print(myDict1 ,'\n', myDict2 ,'\n', m

  • python提取字典key列表的方法

    本文实例讲述了python提取字典key列表的方法.分享给大家供大家参考.具体如下: 这段代码可以把字典的所有key输出为一个数组 d2 = {'spam': 2, 'ham': 1, 'eggs': 3} # make a dictionary print d2 # order is scrambled print d2.keys() # create a new list of my keys 希望本文所述对大家的Python程序设计有所帮助.

  • python 列表转为字典的两个小方法(小结)

    1.现在有两个列表,list1 = ['key1','key2','key3']和list2 = ['1','2','3'],把他们转为这样的字典:{'key1':'1','key2':'2','key3':'3'} >>>list1 = ['key1','key2','key3'] >>>list2 = ['1','2','3'] >>>dict(zip(list1,list2)) {'key1':'1','key2':'2','key3':'3'}

  • python 字典套字典或列表的示例

    文件f1 A 1 a A 1 b A 2 C B 2 a B 2 b 生成如下字典: tdict={'A':{1:['a','b'], 2:['C']}, 'B':{2:['a','b']} } In [22]: tdict={} In [23]: f=open('f1') In [24]: while True: ...: line=f.readline().strip() ...: if not line: ...: break ...: pos1=line.split()[0] ...:

  • Python同步遍历多个列表的示例

    Python的for循环十分灵活,使用for循环我们可以很轻松地遍历一个列表,例如: a_list = ['z', 'c', 1, 5, 'm'] for each in a_list: print(each) 运行结果: 但是,有时遍历一个列表并不能满足我们的需求,在一些特殊的场合,我们可能会需要遍历两个甚至多个列表,例如,有两个列表,第一个列表存放的是人物的姓名,第二个列表存放的是人物的年纪,他们之间的关系是对应的,这时候该怎么办呢? ①使用zip()函数 (推荐) name_list =

  • Python如何把字典写入到CSV文件的方法示例

    在实际数据分析过程中,我们分析用Python来处理数据(海量的数据),我们都是把这个数据转换为Python的对象的,比如最为常见的字典. 比如现在有几十万份数据(当然一般这么大的数据,会用到数据库的概念,不会去在CPU内存里面运行),我们不可能在Excel里面用函数进行计算一些值吧,这样是不现实的. Excel只适合处理比较少的数据,具有方便快速的优势 那么我们假设是这么多数据,现在我要对这个数据进行解析,转换,最后数据分析,处理,然后写入数据到CSV文件,这样才达到要求,那么如何把数据字典写入

  • 浅析Python中元祖、列表和字典的区别

    1.列表(list) list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目. 列表中的项目应该包括在方括号中,这样Python就知道你是指明一个列表.一旦你创建了一个列表,就可以添加.删除,或者是搜索列表中的项目.由于你可以增加或者删除项目,我们说列表是可变的数据类型,即这种类型是可以被改变的,且列表是可以嵌套的. 实例: #coding=UTF-8 #author:RXS002 animalslist = ['fox','tiger','rabbit','snake']

  • Python实现的字典值比较功能示例

    本文实例讲述了Python实现的字典值比较功能.分享给大家供大家参考,具体如下: #coding=utf8 import logging import os from Lib.DealCsv import ExceptPropertyDic from wxPython._wx import false ''''' 用于json数据的比较,包含属性.属性值的比较. ''' #用于比较字符串.列表 PATH=lambda p:os.path.abspath(os.path.join( os.path

  • Python实现的字典排序操作示例【按键名key与键值value排序】

    本文实例讲述了Python实现的字典排序操作.分享给大家供大家参考,具体如下: 对字典进行排序?这其实是一个伪命题,搞清楚python字典的定义---字典本身默认以key的字符顺序输出显示---就像我们用的真实的字典一样,按照abcd字母的顺序排列,并且本质上各自没有先后关系,是一个哈希表的结构: 但实际应用中我们确实有这种排序的"需求"-----按照values的值"排序"输出,或者按照别的奇怪的顺序进行输出,我们只需要把字典转化成list或者tuple,把字典每

  • python 实现将字典dict、列表list中的中文正常显示方法

    在代码文件中定义中文时,经常会遇到问题,要么编码错误,要么是无法正常打印显示. 例如,dict_chinese.py: #!/usr/bin/python a={'name': 'fengshou'} b={'name': "丰收"} print "a=", a print "b=", b 问题1 执行,查看结果 $ python dict_chinese.py File "dict_chinese.py", line 5 S

  • python对象转字典的两种实现方式示例

    本文实例讲述了python对象转字典的两种实现方式.分享给大家供大家参考,具体如下: 一. 方便但不完美的__dict__ 对象转字典用到的方法为__dict__. 比如对象对象a的属性a.name='wk', a.age=18, 那么如果直接将使用a.__dict__获得对应的字典的值为: {name: 'wk', aget:18}, 很方便, 但是也存在一些限制. 其不完美之处在于: 比如: class A(object): name = 'wukt' age = 18 def __init

  • python 实现让字典的value 成为列表

    如果想让字典的VALUE成为字典,只有最开始让其成为列表,如下面程序中的b >>> b={} >>> b={1:['sdad']} >>> b {1: ['sdad']} >>> b[1].append('dada') >>> b {1: ['sdad', 'dada']} >>> c {0: 'dadsad'} >>> list(c[0]) ['d', 'a', 'd', 's'

  • python按照list中字典的某key去重的示例代码

    一.需求说明 当我们写爬虫的时候,经常会遇到json格式的数据,它通常是如下结构: data = [{'name':'小K','score':100}, {'name':'小J','score':98}, {'name':'小Q','score':95}, {'name':'小K','score':100}] 很显然名字为小K的数据重复了,我们需要进行去重.通常对于list的去重,我们可以用set()函数,即: data = list(set(data)) 然而,运行之后你会发现它报错了: li

随机推荐