python 字典嵌套学习

python 字典嵌套学习,第1张

python 字典嵌套学习 python3 字典嵌套学习 遍历字典键对值
# coding:utf-8
# python3.10

student = {"NAME":{"label":"名称","fieldName":"NAME"},"ADDRESS":{"label":"地址","fieldName":"ADDRESS"},"LON":{"label":"经度","fieldName":"LON"},"LAT":{"label":"纬度","fieldName":"LAT"},"SOURCE":{"label":"数据来源","fieldName":"SOURCE"},"CITYCODE":{"label":"城市代码","fieldName":"CITYCODE"},"PRODATE":{"label":"处理日期","fieldName":"PRODATE"}}

for key, value in student.items():
    print("nKey: " + key) # n 是使得每次输出能隔行显示
    print("Value: " + str(value)) # 因为value对应的是字典类型,所以用str()方法将其转化成字符串

输出结果

Key: NAME
Value: {'label': '名称', 'fieldName': 'NAME'}

Key: ADDRESS
Value: {'label': '地址', 'fieldName': 'ADDRESS'}

Key: LON
Value: {'label': '经度', 'fieldName': 'LON'}

Key: LAT
Value: {'label': '纬度', 'fieldName': 'LAT'}

Key: SOURCE
Value: {'label': '数据来源', 'fieldName': 'SOURCE'}

Key: CITYCODE
Value: {'label': '城市代码', 'fieldName': 'CITYCODE'}

Key: PRODATE
Value: {'label': '处理日期', 'fieldName': 'PRODATE'}

如果只输出所有的键

# coding:utf-8
# python3.10

student = {"NAME":{"label":"名称","fieldName":"NAME"},"ADDRESS":{"label":"地址","fieldName":"ADDRESS"},"LON":{"label":"经度","fieldName":"LON"},"LAT":{"label":"纬度","fieldName":"LAT"},"SOURCE":{"label":"数据来源","fieldName":"SOURCE"},"CITYCODE":{"label":"城市代码","fieldName":"CITYCODE"},"PRODATE":{"label":"处理日期","fieldName":"PRODATE"}}

for key in student.keys():
    print("fieldName = "%s"" % key)

输出结果

fieldName = "NAME"
fieldName = "ADDRESS"
fieldName = "LON"
fieldName = "LAT"
fieldName = "SOURCE"
fieldName = "CITYCODE"
fieldName = "PRODATE"
Python enumerate() 函数

enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

语法
enumerate(sequence, [start=0])
参数
  • sequence – 一个序列、迭代器或其他支持迭代对象。
  • start – 下标起始位置。
返回值

返回 enumerate(枚举) 对象。

实例
#普通的 for 循环
>>>i = 0
>>> seq = ['one', 'two', 'three']
>>> for element in seq:
...     print i, seq[i]
...     i +=1
... 
0 one
1 two
2 three

#for 循环使用 enumerate
>>>seq = ['one', 'two', 'three']
>>> for i, element in enumerate(seq):
...     print i, element
... 
0 one
1 two
2 three

#用enumerate函数遍历list
for x , y in enumerate(dict):
    print ("fieldName%d = "%s"" % (x,y))
    print ("fieldalias%d = "%s"" % (x,y))
字典嵌套
# coding:utf-8
# python3.10

students = {
    'kelvin': {
        'age': 18,
        'course': ['数据结构', '计算机网络', '计算机组成原理', ' *** 作系统']
    },
    'vicky': {
        'age': 19,
        'course': ['xx经济学', '西方经济学', '统计学', '发展经济学']
    }
}

#嵌套的字典遍历
for name, student in students.items():
    print("姓名:", name, "n年龄:", student['age'], "n所学课程:") # n 换行显示

    for course in student['course']:
        print("t" + course) # “t”是指制表符,代表着四个空格
实战
# coding:utf-8
# python3.10

dict = {"NAME":{"label":"名称","fieldName":"NAME"},"ADDRESS":{"label":"地址","fieldName":"ADDRESS"},"LON":{"label":"经度","fieldName":"LON"},"LAT":{"label":"纬度","fieldName":"LAT"},"SOURCE":{"label":"数据来源","fieldName":"SOURCE"},"CITYCODE":{"label":"城市代码","fieldName":"CITYCODE"},"PRODATE":{"label":"处理日期","fieldName":"PRODATE"}}

'''
#嵌套的字典遍历,普通方法
for x , y in dict.items():
    print("fieldname:", x , "nfieldalias:", y['label']) 
'''

'''
#嵌套的字典遍历,用enumerate()函数
for x , y in enumerate(dict,start=1):
    print ("fieldName%d = "%s"" % (x,y))
    print ("fieldalias%d = "%s"" % (x,y))
'''

#组合的遍历
t = 1
for x , y in dict.items():
    print("fieldName%d = "%s"" % (t,x))
    print("fieldalias%d = "%s"" % (t,y['label'])) 
    t = t + 1

输出结果

fieldName1 = "NAME"
fieldalias1 = "名称"
fieldName2 = "ADDRESS"
fieldalias2 = "地址"
fieldName3 = "LON"
fieldalias3 = "经度"
fieldName4 = "LAT"
fieldalias4 = "纬度"
fieldName5 = "SOURCE"
fieldalias5 = "数据来源"
fieldName6 = "CITYCODE"
fieldalias6 = "城市代码"
fieldName7 = "PRODATE"
fieldalias7 = "处理日期"

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5680072.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-17
下一篇2022-12-17

发表评论

登录后才能评论

评论列表(0条)

    保存