給定字典,如何從字典中獲取“原始”值列表?所需的結果末尾不包含括號或括號或雙引號,它僅包含每個值的單引號。所需的結果如下所示:result = 'yellow', 'green', 'white'我愿意接受有關如何設置字典以輕松獲得所需結果輸出的建議。字典可以由鍵值對組成,其中鍵值對是字典和列表或元組或集合。這個解決方案在測試中有效,我想知道是否有比使用更pythonic和更健壯的東西,print這樣我就可以使用結果,而不僅僅是在測試中打印出來:Dict_w_tuple_values = dict( dictionary={ 'fruits':{ 'type':['c'], 'colors':('yellow', 'green', 'white'), },)result = print(", ".join( repr(e) for e in list(Dict_w_tuple_values['dictionary']['fruits']['colors'])))最初我有這本字典:Dict_w_list_values = dict( dictionary={ 'fruits':{ 'type':['c'], 'colors':['yellow', 'green', 'white'], },)...并嘗試了列表推導,.join, eval(list_object), .strip, .lstrip, findall, str(list_object)[1:-1], re.sub, replace, joinwith map.這些都沒有奏效。我看到了一些使用正則表達式的機會,但沒有得到想要的結果。最終,我想使用結果通過 .format(**Dict_w_tuple_values).填充時的參數應為:'yellow', 'green', 'white'不是"'yellow', 'green', 'white'"或者["'yellow', 'green', 'white'"]也不("'yellow', 'green', 'white'")
2 回答

神不在的星期二
TA貢獻1963條經驗 獲得超6個贊
list_object
您為什么不這樣做,而不是獲取字符串并對其應用正則表達式?
list_string = ', '.join(DictVariables['dictionary']['fruits']['colors'])
如果您需要在每個字符串周圍加上單引號:
list_string = "'{}'".format( "', '".join(DictVariables['dictionary']['fruits']['colors']))
這會在每個元素 ( ) 之間添加單引號', '
,然后將剩余的外部元素添加到format

慕碼人8056858
TA貢獻1803條經驗 獲得超6個贊
使用替換功能從列表中刪除 []。以下是供您參考的代碼。
a.replace('[','').replace(']','')
雙引號使列表變為字符串,因此我們無法刪除它。讓我知道使用雙引號的原因,我們可以解決這個問題
添加回答
舉報
0/150
提交
取消