規(guī)格: Python3.3.2我打算做什么:以字典作為輸入并返回一個(gè)字典作為輸出,但是現(xiàn)在值是鍵,反之亦然問題:我相信我可以弄清楚鍵和值切換部分。但我不知道如何將字典作為輸入。(并將對(duì)象類型保持為dict)我試過的a = input("Please enter a dictionary: ")
print(a)結(jié)果: {'a':1,'b':2}。但是:事實(shí)證明這是一個(gè)字符串對(duì)象,如使用type(a)和得到<class 'str'>的結(jié)果所示。
1 回答

慕標(biāo)琳琳
TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超9個(gè)贊
您在終端中輸入的所有內(nèi)容始終都是字符串!因此,如果輸入正確的字典,則必須首先通過執(zhí)行給定的字符串來轉(zhuǎn)換它,如下所示:
import ast
a = input("Please enter a dictionary: ")
d = ast.literal_eval(a)
print d
但是,請(qǐng)看對(duì)您問題的評(píng)論。我認(rèn)為沒有人會(huì)要求您從命令行解析dict這樣的內(nèi)容。因此,該任務(wù)可能希望您編寫一個(gè)函數(shù)來接收字典并將其打印出來,或者可能要玩它,以便您可以看到python中的可變和不可變之間的區(qū)別以及它們?nèi)绾蝹鬟f!
添加回答
舉報(bào)
0/150
提交
取消