string = 'racknumber: 1 racktype: rack23 apn: rackansi2p高度: 2134.0宽度:701‘
输出= {'racknumber':'1','racktype':‘rack23 23’,'apn':'rackansi2p',‘高度’:'2134.0',‘宽度’:'701.0'}
发布于 2022-05-17 12:02:24
如果每个键只有一个项目,您可以这样做
mystr = "racknumber: 1 racktype: rack23 apn: rackansi2p height: 2134.0 width: 701.0"
splitted = mystr.split()
mydic = {}
for i in range(len(splitted)):
if i % 2 == 1:
mydic[splitted[i-1]] = splitted[i]发布于 2022-05-17 12:41:46
string = 'racknumber: 1 racktype: rack23 apn: rackansi2p height: 2134.0 width: 701.0'
l = sum((s.split() for s in string.split(':')), [])
d = dict(zip(l, l[1:]))
print(d)备注:
sum( , [])来处理列表。使用,即chain从itertools。在飞行中测试小东西..。我想是有用的。这里有itertools
...
l = list(it.chain.from_iterable(s.split() for s in string.split(':')))
...import re
d = dict(re.findall(r'\b([^\s]+?):\s([^\s]+)', string))https://stackoverflow.com/questions/72273603
复制相似问题