如何迭代不区分大小写的排序字典项?

the*_*eta 5 python

例:

>>> d = {'answer':1, 'Question':2}
>>> for i, j in sorted(d.items()): print i
Question
answer
Run Code Online (Sandbox Code Playgroud)

我想要不区分大小写的列表:

answer
Question
Run Code Online (Sandbox Code Playgroud)

而且我相信它可以用简单的Pythonic方式完成.

Joh*_*rra 7

如果它只是打印键:

for i in sorted(d.keys(), key=lambda x: x.lower()): print i
Run Code Online (Sandbox Code Playgroud)

如果您之后需要这些值,您可以这样做

for i, j in sorted(d.items(), key=lambda x: x[0].lower()): print i, j
Run Code Online (Sandbox Code Playgroud)

编辑:更短更好(因为你有范围):

for i in sorted(d, key=str.lower):
    print i, d[i]
Run Code Online (Sandbox Code Playgroud)