具体函数有 set(),pop(),update(),items(),keys(),values(),get(),setdefault()
创新互联公司主要从事网站设计制作、成都网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务营山,十载网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575
python 字典操作
假设字典为 dics = {0:'a', 1:'b', 'c':3}
二是使用dict本身提供的一个 get 方法,在Key不存在的时候,返回None:
print dics.get('a')
print dics.get('Paul')
None
dict.get(key,default=None) 两个选项 一个 key 一个 default= None ----default可以是任何strings(字符)
2.从字典中取值,若找到则删除;当键不存在时,显示异常key error
[方法] dics.pop('key')
3.给字典添加一个条目。如果不存在,就指定特定的值;若存在,就算了。
[方法] dic.setdefault(key, value)
4. update
a = {'a':1,'b':2}
a.update({'c':3})
a
{'a': 1,'c': 3,'b': 2}
a.update({'c':4})
a
{'a': 1,'c': 4,'b': 2}
dict的作用是建立一组 key 和一组 value 的映射关系,dict的key是不能重复的。
有的时候,我们只想要 dict 的 key,不关心 key 对应的 value,目的就是保证这个集合的元素不会重复,这时,set就派上用场了。
应为在python中dict是可变对象。用dic1赋值给dic3后,并没有创建一个新的对象,dic3和dic1指向同一个对象。通过dic3改变其内容,就如同通过dic1改变对象内容一样。
具体的内容你可以看看深拷贝和浅拷贝
import copy
def com_weight(dic1,dic2):
dic3 = copy.deepcopy(dic1) #深拷贝,,,,
for i in dic1.keys():
for j in dic1[i].keys():
dic3[i][j]=dic1[i][j]-dic2[i][j]
print dic3
if __name__=='__main__':
dic1 = {1: {1: 142264, 2: 142315}, 2: {3: 142111}, 3: {3: 142723}}
dic2 = {1: {1: 142263, 2: 142312}, 2: {3: 142110}, 3: {3: 142722}}
print '__________________'
print dic1
print dic2
print '*******************'
com_weight(dic1, dic2)
print '~~~~~~~~~~~~~~~~~~~~~~~~'
print dic1
print dic2
问题没看懂,尝试如下回答。
如果单纯的打印dic类型的变量
d=(1,3,5)
print(d)
(1, 3, 5)
2. 如果是使用函数打印dic类型的变量
d=(1,3,5)
def print_dic(dic):
for i in dic:
print(i)
print_dic(d)
运行结果:
1
3
5