在Python中將列表字串轉換為字典
這裡我們有這樣一種情況:如果一個字串包含的元素使其成為一個列表,但這些元素也可以表示一個鍵值對,使其成為一個字典。在本文中,我們將展示如何使用這樣的列表字串並將其變成一個字典。
使用 split 和 slicing
在此方法中,我們使用 split 函式將元素分隔為鍵值對,並使用切片將鍵值對轉換為字典格式。
示例
stringA = '[Mon:3, Tue:5, Fri:11]'
# Given string
print("Given string : \n",stringA)
# Type check
print(type(stringA))
# using split
res = {sub.split(":")[0]: sub.split(":")[1] for sub in stringA[1:-1].split(", ")}
# Result
print("The converted dictionary : \n",res)
# Type check
print(type(res))輸出
執行以上程式碼,我們得到以下結果 -
('Given string : \n', '[Mon:3, Tue:5, Fri:11]')
('The converted dictionary : \n', {'Fri': '11', 'Mon': '3', 'Tue': '5'})
使用 eval 和 replace
eval 函式可以從字串中獲取實際列表,然後 replace 將每個元素轉換為一個鍵值對。
示例
stringA = '[18:3, 21:5, 34:11]'
# Given string
print("Given string : \n",stringA)
# Type check
print(type(stringA))
# using eval
res = eval(stringA.replace("[", "{").replace("]", "}"))
# Result
print("The converted dictionary : \n",res)
# Type check
print(type(res))輸出
執行以上程式碼,我們得到以下結果 -
('Given string : \n', '[18:3, 21:5, 34:11]')
('The converted dictionary : \n', {18: 3, 34: 11, 21: 5})
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP