python字典增删改查项目_python 字典的增删改查

字典

# 1.存储数据比较大

# 2.字典的查找速度比列表快

# 3.字典都是通过键来操作的,且键必须是唯一的。

# 4.# dic = {"键":"值","key":"value"}

字典的增删改查

字典增:

dic = {}

dic["键"]= 值 添加键值对

dic = {}

dic.setdefault("键",值) 有则更改,无则添加

字典删:

dic = {"111":[2,3,4],"222":[567]}

dic.pop("键") 通过键指定删除

dic = {"111":[2,3,4],"222":[567]}

dic.popitem() 随机删除键值对

dic = {"111":[2,3,4],"222":[567]}

del dic["111"] 指定删除键值对

dic = {"111":[2,3,4],"222":[567]}

dic.clear 删除整个字典

字典改:

dic = {"111":[2,3,4],"222":[567]}

dic[键] = 值 通过键修改值

字典查:

dic = {"111":[2,3,4],"222":[567]}

print(dic["111"]) 通过找键查询

大题示例:

要求得到的结果:{"河南":3,"河北":2,"北京":1,"内蒙":1}

id = [120121198903119561,

120121198903110561,

120121196903119561,

130482198307144762,

130482198307144662,

110121197805144347,

150121197502122799]

addrs = {

120: "河南",

130: "河北",

110: "北京",

150: "内蒙",

}

-----------------------------------------------------------------------------------------

答:

id = [120121198903119561,

120121198903110561,

120121196903119561,

130482198307144762,

130482198307144662,

110121197805144347,

150121197502122799]

addrs = {

120: "河南",

130: "河北",

110: "北京",

150: "内蒙",

dic = {} #创建一个空的字典

for i in id: 循环id这个列表

if dic.get(addrs.get(int(str(i)[0:3]))): 通过对i的切片拿到前三位做addrs的键,但是整数不支持切片需要str转换一下,切完后还要转回到整数做键,if判断dic这个字典中是否有这个值。

dic[addrs.get(int(str(i)[0:3]))] += 1 如果这个字典中有就加一

else:

dic[addrs.get(int(str(i)[0:3]))] = 1 如果这个字典没有就创建1个,默认数为1.

print(dic)

字符串转字典

dic = {}

s = "{'key1':1,'key2':2,'key3':3}"

f = open("demo","a+",encoding="utf-8")

f.write(s)

f.seek(0)

f1 = f.read()

lst = f1[1:-1].replace("'","").split(",")

for i in lst:

k,v = i.split(":")

dic[k] = v

print(dic,type(dic))

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值