通过一个案例来了解python的字典推倒时:
将字符串 "k:1 |k1:2|k2:3|k3:4",处理成字典 {k:1,k1:2,...}。
做法1:
分别用spilt函数删除 |,:,最后将key,value传入字典。
str1 = 'k:1 |k1:2|k2:3|k3:4'
dict1 = {}
for iterms in str1.split('|'):
key,value = iterms.split(':')
dict1[key] = value
做法2:
做法二的方法其实与做法1是一样的,只是有更简洁的写法:
d = {k:int(v) for t in str1.split("|") for k, v in (t.split(":"), )}
print(d)
猛地一看可能有点懵,但其实写法就是定义了一个字典,key是k,value就是int(v),我们想取出正确的值,首先需要把字符串里的 '|' 删除,删除后再把 ':' 删除,剩下的从列表取出的就是k,v了。