1 字典的合并,把多个字典合并成一个字典
>>> a = {'a': 1, 'b':2}
>>> c = {'c':3}
>>> a.update(c.items())
>>> a
{'a': 1, 'c': 3, 'b': 2}
2.过滤列表中的字典
>>> alist=[{"a":"1","b":"2"},{"a":"1","b":"3"},{"a":"1","b":"2"},{"a":"2","b":"1"}]
>>> for item in alist:
while alist.count(item)>1:
alist.remove(item)
>>> alist
[{'a': '1', 'b': '3'}, {'a': '1', 'b': '2'}, {'a': '2', 'b': '1'}]
3.实现同一列表,列表值作为字典的键,任意值设定为字典的值
>>> dict.fromkeys(['name','age'],'unknown')
{'age': 'unknown', 'name': 'unknown'}
4.实现字典键:对应列表,拆分成count(列表长度) 的字典
list1=[{'c': 'b', 't': [1, 2]}]
code_dict_list =[]
>>> for l in list1:
for k, v in l.iteritems():
if type(v)==list1:
for v2 in v:
new_l=l.copy()
new_l[k]=v2
code_dict_list.append(new_l)
print code_dict_list
>>> [{'c': 'b', 't': 1}, {'c': 'b', 't': 2}]
5.字典的值去重,将列表变成字符串
dict1={'a':'1','b':'2','c':'7','f':'0'}
print dict.values()
print ','.join(set(dict1.values()))
['1', '7', '2', '0']
'1,0,2,7'
6.数据库中取出的列表,会是unicode类型,怎么把全是 p=u'[]' 怎么变成p=[] ?
p='[]'
print eval(p)
m=u"['j','l']"
print eval(m)
7. 对字典进行分组
for k,g in groupby(sorted(no_channels_list, key=keyfn), keyfn): #分组操作
no_channels_dict[k]=sorted(list(g),key=lambda x:x['contract_no'])
番外:作为一个女生,一开始并不喜欢编码,但是长时间下来,我已经习惯了,也喜欢了。但是我经常用的时候查查,去找别人的方法,现在开始记录自己收集的方法。
有的时候因为急于写代码,都没有好好构思,先想在做,会有更好的效率。