我的教授指出,这段代码可以浓缩为一行。我不知道怎么做,即使我脑子里有一个骨架。
def dict_as_str(d : {None:None}, key : callable=None, reverse : bool=False) -> str:
tempStr = ''
for key in sorted(d.keys(), key=key, reverse = reverse):
tempStr += " " + str(key) +" -> " + str(d[key]) + "\n"
return tempStr
答案 0 :(得分:3)
str.join
和生成器表达式将执行此操作:
return "".join(" {} -> {}\n".format(key, d[key])
for key in sorted(d, key=key, reverse=reverse))