python自动化办公 51cto_Python 自动化运维1-字典

字典工厂函数:

x = {'a':100,'b':200,'c':300}

字典索引: #显示没有顺序,不像列表和函数

print x['a']

100

字典方法:

删除:

x.pop('a') #需给出索引参数

print x

x.popitem() #不需要索引参数,随机删除

删除所有元素:

x.clear()

print x

输出:{}

items 和 iteritems输出字典中键-值

x.items() x.iteritems()

keys 和 iterkeys 输出字典中键

x.keys() x.iterkeys()

values 和 itervalues输出字典中值

x.values() x.itervalues()

get 获取字典中键-值(比较温和输出)

x.get('a')

输出:100

x.get('d')

没有输出

has_key 确认字典中是否有该键

x.has_key('a')

输出:True

x.has_key('d')

输出:False

fromkeys 给定的键建立新的字典

a = dict.fromkeys(['name','age'],(100))

setdefault 访问字典中键-值,如果没有增加该键,值默认为None

x.setdefault('e',100)

update更新列表,将某个列表中键-值加入到另一个列表键-值,重复去掉

x = {'a':100,'b':200,'c':300}

z = {'d':500,'e':6000}

x.update(z)

print x

输出:{'a': 100, 'c': 400, 'b': 200, 'e': 6000, 'd': 500}

字典浅拷贝: 如果键-一个值,不会改变原字典的值,如果键-多值(列表),此时会存在同时改变

z = x.copy()

print z

输出:{'a':100,'b':200,'c':300}

z['c'] = 400

print z

输出:{'a': 100, 'c': 400, 'b': 200}

print x

输出:{'a': 100, 'c': 300, 'b': 200}

x = {'a': 100, 'c': 300, 'b': [600, 200]}

y = x.copy()

print y

输出:{'a': 100, 'c': 300, 'b': [600, 200]}

y['b'][0] = 300

print y

输出:{'a': 100, 'c': 300, 'b': [300, 200]}

print x

输出:{'a': 100, 'c': 300, 'b': [300, 200]}

这个时候需要用到深拷贝

from copy import deepcopy

y = x.deepcopy()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值