将字符串处理成字典;以key或者value进行排序;将排序后list嵌套tuple格式的数据又处理成字典;简写字符串处理成字典
str1 = 'k:1|k1:2|k2:3|k3:4'
dict1 = {}
for iterms in str1.split('|'): ##指定|分割,对字符串进行切片,返回list格式
k, v = iterms.split(':') ##指定:分割, 对字符串进行切片,赋值给k, v
dict1[k] = v ##将k, v添加到dict1
print dict1 #输出{'k3': '4', 'k2': '3', 'k': '1', 'k1': '2'}
dict2 = sorted(dict1.items(), key=lambda x: x[0]) ##使用sorted函数对k, v进行排序
print dict2 ##输出[('k', '1'), ('k1', '2'), ('k2', '3'), ('k3', '4')]
dict3 = {}
for jk in dict2: ##将dict2遍历赋值给jk
k, v = jk ##将jk返回的tuple格式分别赋值给k, v
dict3[k] = v ##将k, v添加到dict3
print dict3 ##输出{'k3': '4', 'k2': '3', 'k': '1', 'k1': '2'}
dict4 = {k:v for i in str1.split('|') for k, v in (i.split(':'), )} ##最后一个for多一个圆括号,是不是将分割后用tuple的格式封装数据,起到赋值给k, v的作用?
print dict4 ##输出{'k3': '4', 'k2': '3', 'k': '1', 'k1': '2'}