使用pprint订购dict时忽略大写?
Ignore capitalization when ordering dict using pprint?
所以我有一本字典,说:
myDict = {"145":1, "Kittens":2, "apples":1, "trees":2}
并使用 pprint(myDict, ...)
,我得到:
{'145': 1,
'Kittens': 2,
'apples': 1,
'trees': 2}
相反,我想忽略大写字母 K 的明显顺序优先级并得到:
{'145': 1,
'apples': 1,
'Kittens': 2,
'trees': 2}
我必须使用 PrettyPrinter 模块吗?是否有隐藏的 pprint 参数?还是完全有另一种解决方案?我的字典键没有比这更复杂的了。谢谢。
没有导入,简单版本:
def printdict(myDict):
print('{')
for a,b in sorted(myDict.items(),key = lambda tuple : tuple[0].lower()):
print("'"+str(a)+"'"+" : "+str(b))
print('}')
根据 PM 2Ring 改进的版本(这适用于任何东西):
def printdict(myDict):
print('{')
for a,b in sorted(myDict.items(),key = lambda t : t[0].lower()):
print(' {!r}: {!r},'.format(a, b))
print('}')
所以我有一本字典,说:
myDict = {"145":1, "Kittens":2, "apples":1, "trees":2}
并使用 pprint(myDict, ...)
,我得到:
{'145': 1,
'Kittens': 2,
'apples': 1,
'trees': 2}
相反,我想忽略大写字母 K 的明显顺序优先级并得到:
{'145': 1,
'apples': 1,
'Kittens': 2,
'trees': 2}
我必须使用 PrettyPrinter 模块吗?是否有隐藏的 pprint 参数?还是完全有另一种解决方案?我的字典键没有比这更复杂的了。谢谢。
没有导入,简单版本:
def printdict(myDict):
print('{')
for a,b in sorted(myDict.items(),key = lambda tuple : tuple[0].lower()):
print("'"+str(a)+"'"+" : "+str(b))
print('}')
根据 PM 2Ring 改进的版本(这适用于任何东西):
def printdict(myDict):
print('{')
for a,b in sorted(myDict.items(),key = lambda t : t[0].lower()):
print(' {!r}: {!r},'.format(a, b))
print('}')