第六天-python字典-2
2017-10-25 04:48
393 查看
字典的环节,key:value的形式在很多语言中都实用,java用map,json等,redis中等都存在hash等形式,虽然名字不同,但是都是key:value的形式,字典是另一种可变容器模型,且可存储任意类型对象。
字典中每个键值(key=>value)对用冒号(:)分隔,每个对之间用逗号(,)分割,整个字典包括在花括号{}中,字典赋值有三种方式
k={‘name’:’lingxiangxiang’,’age’:’100’,123:’abc’}
d=dict(a=1,b=2,c=3)
d=dict([(‘name’,’list’),(‘age’,20)])
字典有很多常用的方法
get
setdefault
keys
valus
iteritems
update等
1)clear方法
2)get方法
3)setdefault方法
4)key 和 iterkeys
5)values、iteritems和items
6)pop
字典高级操作
1)fromkeys
2)两个列表叠加成一个字典:zip函数
3)update
4)字典排序
字典中每个键值(key=>value)对用冒号(:)分隔,每个对之间用逗号(,)分割,整个字典包括在花括号{}中,字典赋值有三种方式
k={‘name’:’lingxiangxiang’,’age’:’100’,123:’abc’}
d=dict(a=1,b=2,c=3)
d=dict([(‘name’,’list’),(‘age’,20)])
k = {'name':'lingxiangxiang', 'age': 20, 'sex':'man'} print(k) print(type(k))
k1 = dict (a=1, b=2, c=3) print(k1)
d =dict([('name','lingxiangxiang'), ('age', 20)]) print(d)
字典有很多常用的方法
get
setdefault
keys
valus
iteritems
update等
1)clear方法
d =dict([('name','lingxiangxiang'), ('age', 20)]) print(d)
2)get方法
#get方法 k = {'name':'lingxiangxiang', 'age': 20, 'sex':'man'} d =dict([('name','lingxiangxiang'), ('age', 20)]) print(dir(d)) print(k.get('name')) print(k.get('age')) print(k.get('address'))
3)setdefault方法
k = {'name':'lingxiangxiang', 'age': 20, 'sex':'man'} #setdefault print(k.setdefault('name','beijing')) print(k.setdefault('age','beijing')) print(k.setdefault('address','beijing huan ying ni '))#相当于增加一个值,设置增加一个值
4)key 和 iterkeys
k = {'name':'lingxiangxiang', 'age': 20, 'sex':'man'} print('######' * 20) print(k.keys()) print(k.iterkeys())
5)values、iteritems和items
print('######' * 20) #valus print(k.values())#只是输出了对应值 #iteritems print(k.iteritems())#这是对象,建议在开发中使用。取一个用一个 print(k.items())# 把所有元素组取出,放在内存中;太占用系统资源 for x, y in k.iteritems():#根据观察x,后面最好加一个空格,这里是for循环;输出的结果是一对一对的出现 print(x, y)
6)pop
print(k) k.pop('address')#删除一个指定键值,只能放key, k.pop('name') print(k)
字典高级操作
1)fromkeys
l = ['a', 'b', 'c', 'd'] m = {} n = m.fromkeys(l, 123)#这里123的前面是字母‘l’。 print(n)
print('@@@@@@' * 20) l = ['a', 'b', 'c', 'd'] m = {} # n = m.fromkeys(l, 123)#这里123的前面是字母‘l’。 n = dict.fromkeys(l, 123)#这里123的前面是字母‘l’。 print(n)
2)两个列表叠加成一个字典:zip函数
l1 = ['a', 'b', 'c', 'd'] l2 = [1, 2, 3, 4] dict_test = zip(l1, l2) print(dict_test)
3)update
print('@@@@@@' * 20) l1 = ['a', 'b', 'c', 'd'] l2 = [1, 2, 3, 4] dict_test = dict(zip(l1, l2))#将列表变成字典,通过dict实现 print(dict_test) print(k) dict_test.update(k) print(dict_test)
4)字典排序
mm = dict(a=1, b=10, c=3, d=9) print(mm) #print sorted(mm.iteritems(), key = lambda d:d[1], reverse = True)#d表示一个参数,True表示从大到小,Flase表示从小到大 print sorted(mm.iteritems(), key = lambda d:d[1], reverse = Flase)#d表示一个参数,True表示从大到小,Flase表示从小到大
相关文章推荐
- python 元组,列表,字典
- Python中的列表、元祖、字典
- python字典合并哪种方式效率最高?
- 关于python字典排序问题(直接对字典不能排序)
- python列表与字典
- python中用cmp比较字典大小
- 第一个理解的python程序--ZIP文件的字典破解
- python字典常用操作
- 004_016 Python 通过字典分派方法和函数
- python中3种内建的数据结构:列表、元组和字典
- python-多种字典创建方式
- Python 字典(Dictionary)
- python:字典(dict)
- python进阶指南:list如何去重(去掉list中元素为字典的且字典部分key相同的list元素)
- Python轻松入门-22 字典
- 【每日一记3.16】python学习记录3----字典,列表,元组
- 字典,python中的map
- python中列表,字典输出中文乱码
- Python数据类型:字典
- python字典用法-统计统计一句单词