python常用代码范例_Python dict的常用方法示例代码

常用方法

浅拷贝copy

a = {"ilpy1": {"company": "aaa"},

"ilpy2": {"company": "bbb"}

}

new_dict = a.copy()

new_dict["ilpy1"]["company"] = "wtf"

print(new_dict)

print(a)

print(id(a))

print(id(new_dict))

print(id(new_dict["ilpy1"]["company"]))

print(id(a["ilpy1"]["company"]))

然后我们发现,执行这一步操作时new_dict["ilpy1"]["company"] = "wtf",对a也执行了修改,比较id可知new_dict["ilpy1"]["company"]))和a["ilpy1"]["company"]指向了同一位置,而a与new_dict指向不同位置,这就是浅拷贝的副作用

深拷贝

这并不是dict自带的方法而是来自python的一个包copy

import copy

a = {"ilpy1": {"company": "aaa"},

"ilpy2": {"company": "bbb"}

}

new_dict = copy.deepcopy(a)

print(id(a))

print(id(new_dict))

a['ilpy1']['company'] = "666"

print(a)

print(new_dict)

list转换dict

import copy

a = {"ilpy1": {"company": "aaa"},

"ilpy2": {"company": "bbb"}

}

myList = ['aaa', 'bbb']

new_dict = dict.fromkeys(myList, "2")

print(new_dict)

items

a = {"ilpy1": {"company": "aaa"},

"ilpy2": {"company": "bbb"}

}

for key,value in a.items():

print(key,value)

clear

a = {"ilpy1": {"company": "aaa"},

"ilpy2": {"company": "bbb"}

}

# clear 清楚dict元素

# a.clear()

# print(a)

update

a = {"ilpy1": {"company": "aaa"},

"ilpy2": {"company": "bbb"}

}

a.update(a=1,b=2)

print(a)

传入可迭代对象也可

a = {"ilpy1": {"company": "aaa"},

"ilpy2": {"company": "bbb"}

}

a.update([('1','2')])

print(a)

a.update((('1','2'),))

print(a)

setdefault

Python 字典 setdefault() 函数和 get()方法 类似, 如果键不存在于字典中,将会添加键并将值设为默认值。所以当我们需要快速判断键值对是否存在并且加上去的时候就可以使用此方法

ps:下面看下python-dict和list常用方法

# *********-list-*********

# 创建一个list

list1 = [1, 2, '力气,', 'afd']

print(type(list1))

print(list1)

# 添加单个元素

list1.append('ffff')

print(list1)

list2 = ['ff2', 34]

# 添加list

list2.extend(list1)

print(list2)

# 获取指定index的元素

print(list2[2])

# 删除指定values元素

list2.remove('value')

# 删除index=2的元素

del list2[2]

print(list2)

# 创建一个list1中的数据重复2次的list3

list3 = list1*2

print(list3)

# 排序

list4 = [1, 2, 8, 3, 12, 3]

# 升序

list4.sort()

print(list4)

# 降序

list4.reverse()

print(list4)

# 创建一个二维数组

list_muti = [[0, 0, 1]]*2

print(list_muti)

print(list_muti[0][1])

# *********-dict-*********

# 创建一个dict

dict1 = {}

print(type(dict1))

# 字典添加元素

dict1['a'] = 'value-a'

print(dict1)

# 批量添加元素

listx = []

for value in ('abced'):

for key in (['abcde', 're', 1, 'n你re1', 3]):

if key in listx:

continue

else:

listx.append(key)

# print(value)

# print(key)

dict1[key] = value

break

print(dict1)

# dict里的fromkeys方法

dict1 = dict1.fromkeys(('a', 'ccc'), """ "nn'n'" """)

print(dict1)

# 获取keys之后转成list显示

keylist = list(dict1.keys())

print('%s' % keylist[0])

# 获取values之后转成list显示

valuelist = list(dict1.values())

print('%s' % valuelist[0])

print(dict1)

# 获取key对应的value

value = dict1['a']

print(value)

value2 = dict1.get('ccc', '木有找到')

# 与dict.get()方法一致,但是如果没有对应的key会自动创建一个key,value为none

dict1.setdefault('m')

print(dict1)

# 更新字典,如果没有对应的key会自动添加key-dict

dict1.update({'ccc': 'fff2'})

print(dict1)

value2 = dict1.get('ccc1', '木有找到')

print(value2)

总结

到此这篇关于Python dict的常用方法的文章就介绍到这了,更多相关Python dict的常用方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值