【发布时间】:2020-12-08 12:10:03
【问题描述】:
我在这篇文章的答案中给出的代码有一些问题: Can I use a nested for loop for an if-else statement with multiple conditions in python?
import pprint
board = {
'1a': 'bking',
'4e': 'bpawn',
'2c': 'bpawn',
'3f': 'bpawn',
'5h': 'bbishop',
'6d': 'wking',
'7f': 'wrook',
'2b': 'wqueen'
}
count = {}
for k, v in board.items():
count[k[0]][k[1:]] = v
pprint.pprint(count)
我想得到以下字典:
count = {'b': {'king': 1, 'pawn': 3, 'bishop': 1},
'w': {'king': 1, 'rook': 1, 'queen': 1}}
收到错误:
Traceback (most recent call last):
File "/Users/Andrea_5K/Library/Mobile Documents/com~apple~CloudDocs/automateStuff2/ch5/flatToNest2.py", line 21, in <module>
count[k[0]][k[1:]] = v
KeyError: '1'
【问题讨论】:
-
将堆栈跟踪添加到您的问题中
-
@MadPhysicist 你是什么意思?我在这个问题中添加了一个指向 OP 的链接,并在 OP 的评论中添加了一个指向这个问题的链接。你还想让我做什么?
-
您需要发布预期输出和异常消息
-
另外,你想对位置信息做些什么吗?
标签: python dictionary for-loop