如何使用for循环访问Python字典PayDayTable中的元素?
在Python 3.6中遍历字典
PayDayTable获取值的方法 没问题!既然你已经切换到Python 3.6,那咱们直接看几种实用的遍历方式,帮你轻松提取PayDayTable里的值:
1. 直接遍历所有值(最省心的方式)
如果你只需要字典里的值,不需要键,直接用values()方法就行:
# 示例字典 PayDayTable = {"Alice": 5000, "Bob": 6000, "Charlie": 5500} # 遍历所有值 for salary in PayDayTable.values(): print(salary)
运行后会输出:
5000 6000 5500
Python 3里的values()返回的是一个视图对象,它会动态反映字典的变化,内存效率比Python 2里返回列表的values()高很多。
2. 同时遍历键和值(需要关联信息时用)
如果需要同时拿到键(比如员工名字)和对应的值(薪资),用items()方法——这是Python 3替代Python 2中iteritems()的写法:
# 遍历键值对 for name, salary in PayDayTable.items(): print(f"员工 {name} 的薪资是:{salary}")
运行输出:
员工 Alice 的薪资是:5000 员工 Bob 的薪资是:6000 员工 Charlie 的薪资是:5500
同样,Python 3的items()返回的也是视图对象,比Python 2返回列表的items()更高效。
3. 通过键间接取值(灵活但稍繁琐)
你也可以先遍历字典的键(默认遍历字典就是遍历键),再通过键来获取对应的值:
# 先遍历键,再取值 for name in PayDayTable: # 方式1:直接通过键索引,键不存在会报错 salary = PayDayTable[name] # 方式2:用get()方法,键不存在时返回默认值(更安全) # salary = PayDayTable.get(name, "未记录薪资") print(f"{name}: {salary}")
这种方式适合你需要对键做额外处理的场景,用get()方法还能避免因键不存在导致的KeyError,容错性更强。
小提示:和Python 2的区别
Python 3里dict.values()、dict.items()都返回视图对象,如果你需要把它们转成列表,直接套个list()就行:
salary_list = list(PayDayTable.values()) print(salary_list) # 输出: [5000, 6000, 5500]
内容的提问来源于stack exchange,提问作者cavalcantelucas
相关产品推荐
相关产品推荐

