Python 遍历字典

一、遍历键(keys)

dict.keys()

以列表返回一个字典所有的键。

python 复制代码
my_dict = { 'key1' : 'value1', 'key2' : 'value2', 'key3' : 'value3' }

# 方法一:使用字典的 keys() 方法
print ( my_dict.keys() )
for key in my_dict.keys():
    # 输出 键 : 值
    print( key + ':' + my_dict[key] )

输出:

二、遍历值(values)

dict.values()

以列表返回字典中的所有值。

python 复制代码
my_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}

# 方法二:使用字典的 values() 方法
print( my_dict.values() )
for value in my_dict.values():
    print(value)

输出:

三、 遍历键值对(items)

dict.items()

以列表返回可遍历的(键, 值) 元组数组。

python 复制代码
my_dict = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}

# 方法三:使用字典的 items() 方法
print( my_dict.items() )
for key, value in my_dict.items():
    print( f"Key: {key}, Value: {value}" )

输出:

四、总结

遍历字典时,可以根据具体需求选择不同的遍历方式。

如果只需要访问键,可以使用 keys()方法;

如果只需要访问值,可以使用 values()方法;

如果需要同时访问键和值,可以使用 items()方法。

五、入门案例

给定一个字典:my_dict = {'小明':98,'小红':97,'小刚':98,'小王':97,'小林':99}

找出分数相同的学生列表。

输出结果为:

{ 98: [ '小明', '小刚' ], 97: [ '小红', '小王' ], 99: ['小林'] }

python 复制代码
my_dict = {'小明':98,'小红':97,'小刚':98,'小王':97,'小林':99}

result = {}
for key, value in my_dict.items():
      key_list = result.get( value )
      if key_list:
          key_list.append( key )
      else:
          key_list = []
          key_list.append( key )
          result[ value ] = key_list

print( result )
相关推荐
应用市场3 小时前
构建自定义命令行工具 - 打造专属指令体
开发语言·windows·python
东方佑3 小时前
从字符串中提取重复子串的Python算法解析
windows·python·算法
Dfreedom.4 小时前
一文掌握Python四大核心数据结构:变量、结构体、类与枚举
开发语言·数据结构·python·变量·数据类型
一半烟火以谋生4 小时前
Python + Pytest + Allure 自动化测试报告教程
开发语言·python·pytest
叶子丶苏5 小时前
第八节_PySide6基本窗口控件_按钮类控件(QAbstractButton)
python·pyqt
百锦再5 小时前
对前后端分离与前后端不分离(通常指服务端渲染)的架构进行全方位的对比分析
java·开发语言·python·架构·eclipse·php·maven
Blossom.1186 小时前
把AI“刻”进玻璃:基于飞秒激光量子缺陷的随机数生成器与边缘安全实战
人工智能·python·单片机·深度学习·神经网络·安全·机器学习
Kratzdisteln6 小时前
【Python OOP Diary 1.1】题目二:简单计算器,改错与优化
python·面向对象编程
小白银子6 小时前
零基础从头教学Linux(Day 53)
linux·运维·python
skywalk81637 小时前
基于频域的数字盲水印blind-watermark
linux·开发语言·python