规格: Python3.3.2
我打算做什么:
将字典作为输入并返回一个作为输出,但值为 现在是关键,反之亦然
问题:我相信我可以弄清楚键和值切换部分。但我不知道如何将字典作为输入。(并将对象类型保持为dict
)
我尝试了什么:
a = input("Please enter a dictionary: ")
print(a)
结果: {'a':1,'b':2}
。的 BUT :
原来这是一个字符串对象,使用type(a)
显示并获得<class 'str'>
作为结果。
答案 0 :(得分:3)
您在终端中输入的所有内容都将是一个字符串!因此,如果输入正确的dict,则必须首先通过执行给定的字符串来转换它:
import ast
a = input("Please enter a dictionary: ")
d = ast.literal_eval(a)
print d
然而,看看你的问题的评论。我不认为有人会要求你从命令行解析dict
这样的问题。因此,任务可能要求你只编写一个函数来接收一个dict并将其打印出来,或者可能与它一起玩,这样你就可以看到python中的mutable和immutables之间的区别以及它们是如何传递的!
干杯!