3 回答

TA貢獻(xiàn)1868條經(jīng)驗(yàn) 獲得超4個(gè)贊
也許這就是您所需要的:
>>> s = "k:1|k1:2|k2:3|k3:4"
>>> dict(i.split(':') for i in s.split('|'))
{'k': '1', 'k1': '2', 'k2': '3', 'k3': '4'}

TA貢獻(xiàn)1789條經(jīng)驗(yàn) 獲得超8個(gè)贊
根據(jù)該字符串的模式的規(guī)則程度,我將根據(jù)字符拆分字符串|,然后根據(jù):字符再次拆分每個(gè)子字符串:
text = "k:1|k1:2|k2:3|k3:4"
my_dict = {}
pairs = text.split("|")
for p in pairs:
k, v = p.split(":")
my_dict[k] = v
您可能想將其轉(zhuǎn)換v為整數(shù)。由你決定。

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超3個(gè)贊
您可以使用雙分割功能
mystr = "k:1|k1:2|k2:3|k3:4"
keyval = mystr.split("|")
mydic = {}
for w in keyval:
w = w.split(":")
mydic[w[0]] = w[1]
print(mydic)
輸出:
{'k': '1', 'k1': '2', 'k2': '3', 'k3': '4'}
添加回答
舉報(bào)