Python使用for循环打印字典指定字段出现TypeError如何解决
报错原因&修复方案
- 遍历逻辑错误
dict.items()返回的是(键, 值)格式的元组,你直接用字符串下标访问元组,自然触发TypeError: tuple indices must be integers or slices, not str报错。你不需要用到外层字典的键,直接遍历clients.values()取内层账户字典即可。 - 字段名拼写错误
你存储的API秘钥字段是APIsecret(s小写),打印时写的APISecret(S大写),字段不匹配会触发后续KeyError。
修正后代码
clients = {1: {'AccountName': 'Acount1', 'APIKey': 'sdhsdhjsd','APIsecret':'sadjkaskldjaskdadasdfvg'}, 2: {'AccountName':'Acount2', 'APIKey':'sdasdasdadc','APIsecret':'sdasdasdassvsdvdsfdfsaf'}} for clients_info in clients.values(): print(f"Accountname: {clients_info['AccountName']} APIkey: {clients_info['APIKey']} APIsecret: {clients_info['APIsecret']}")
运行后输出完全符合预期。
内容的提问来源于stack exchange,提问作者tony selcuk
相关产品推荐
相关产品推荐

