第四章-字典当索引不好用时:——python基础教程(第二版)笔记

本章是依据名字对数组项进行引用

4.2创建和使用字典

x={"a":"1","b":"2"}   #大括号{}表示字典,逗号,分隔,冒号:表示
print x

4.2.1dict函数

x=[("a","b"),("1","2")]
d=dict(x)   #序列字典化
print d

d=dict(a="1",b="2")
print d

输出结果

{'a': 'b', '1': '2'}
{'a': '1', 'b': '2'}
Press any key to continue . . .

4.2.2基本字典操作

与序列类似:

len(x)
del x[]
k in x 

4.2.3字典的格式化字符串

x={'a': '1', 'b': '2'}
print "a is %(a)s."%x

输出结果

a is 1.
Press any key to continue . . .

4.2.4字典方法

#1.clear 清空字典
d={} #创建空字典
d["a"]="1" #给字典添加内容
d["b"]="2" 
print d    # 输出结果{'a': '1', 'b': '2'}
new_d=d.clear() #清空d
print d    # 输出结果{}
print new_d  # 输出结果None

#2.copy 返回具有相同建的新字典(实际上是浅复制shallow copy)
x={'a': '1', 'b': '2'}
y=x.copy()
print   # 输出结果y{'a': '1', 'b': '2'}
y["a"]=3
print  # 输出结果 y{'a': 3, 'b': '2'}
print  # 输出结果 x{'a': '1', 'b': '2'}对y的修改不影响x
x={'a': '1', 'b': '2'}
y=x.copy()
from copy import deepcopy
z=deepcopy(x)  #深复制
x["a"]=4
print x,y,z   # 输出结果{'a': 4, 'b': '2'} {'a': '1', 'b': '2'} {'a': '1', 'b': '2'}

#3.fromkeys使用给定的键建立新字典
print {}.fromkeys(["a","b"])  # 输出结果{'a': None, 'b': None}默认赋值None
print {}.fromkeys(["a","b"],2)  # 输出结果{'a':2, 'b':2}默认值设为2

#4.get宽松的访问词典的方式,若不存在项不报错,显示None
x={'a': '1', 'b': '2'}
print x.get("a"),x.get("c") # 输出结果 1 None

#5.has_key 字典中是否含有特定的键,返回TRUE or FALSE
x={'a': '1', 'b': '2'}
print x.has_key("a"),x.has_key("c")  # 输出结果 True False

#6.items 字典以列表形式返回,disk逆过程  iteitems 返回迭代器
print x.items() # 输出结果[('a', '1'), ('b', '2')]
print x.iteritems() # 输出结果<dictionary-itemiterator object at 0x02C644E0>
print list(x.iteritems()) # 输出结果[('a', '1'), ('b', '2')]  显示迭代器内容

#7.keys和iterkeys

#8.pop移除给定键
x={'a': '1', 'b': '2'}
x.pop("b")
print x  # 输出结果{'a': '1'}

#9.popitem去掉最后一个元素,相当于按顺序删除
x={'a': '1', 'b': '2'}
x.popitem()
print x  # 输出结果{'b': '2'}

#setdefault相当于get,同时可以更新字典
x={'a': '1', 'b': '2'}
print x.setdefault("a") # 输出结果1

#11.update
x={'a': '1', #可以回车创建字典
  'b': '2'}
y={"a":"3"}
x.update(y)
print x  # 输出结果  {'a': '3', 'b': '2'}

#12.values以列表方式返回字典中的值  itervalues返回迭代器,同 iteitems
x={'a': '1', 'b': '2'}
print x.values() # 输出结果['1', '2']
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值