2021-05-24字典

字典

字典:

键和值同时出现的一种存储方式,是可变对象,那么就能够新增修改删除元素
#1字典是无序的
dict1={‘A’:‘apple’,‘B’:‘book’}
dict2={‘B’:‘book’,‘A’:‘apple’}
print(dict1dict2)
True
list1=[1,2]
list2=[2,1]
print(list1
list2)#列表是有序的,
#False
#2新增元素
dict1[‘C’]=‘cake’
print(dict1)
#{‘A’: ‘apple’, ‘B’: ‘book’, ‘C’: ‘cake’}
#3如果键已经存在在字典中,则进行更新,在字典中,键是唯一的
dict1[‘B’]=‘byte’
print(dict1)
#{‘A’: ‘apple’, ‘B’: ‘byte’, ‘C’: ‘cake’}
dict3={‘A’:‘aaaa’,‘A’:‘abbbb’}
print(dict3)
#{‘A’: ‘abbbb’}
#4多个相同的键也只会保留一个
dict3={‘A’:‘apple’,‘A’:‘ace’} #定义字典时,有多个相同的键,也只会保留最后一个
print(dict3)
#{‘A’: ‘ace’}
#5一次新增或修改多个键值对.
dict1.update({‘B’:‘bytes’,‘C’:‘cats’})
print(dict1)
print(id(dict1))
{‘A’: ‘apple’, ‘B’: ‘bytes’, ‘C’: ‘cats’}
1385032646800
#6删除字典中的键值对
del dict1[‘C’],dict1[‘B’]
print(dict1)
{‘A’: ‘apple’}
#7清空字典
dict1={} #重新赋值了一个新的空字典,内存中的地址重新生成了
print(id(dict1))
1385032647160
注意:8清空字典,内存中的地址不变
dict1.clear() #清空字典,内存中的地址不变
print(id(dict1))
1385032647160
9.判断某个值是否位于字典中,可以用in来判断.注意判断的依据是键,而不是值.
if ‘A’ in dict1:
print(‘在字典中’)
else:
print(‘不在字典中’)
10.#字典的键可以存放字符串,数字,元组,不可以存放列表,字典.也就是说字典的键必须是不可变对象.
#字典的值可以是任意数据类型.
dict3={(1,2):{3,4}}
11.#显示字典中所有的键
print(dict1.keys()) #类列表,可以遍历,但不能用下标
dict_keys([‘A’, ‘B’, ‘C’])

for one in dict1.keys(): #可以遍历
print(one)
A
B
C
#如果需要用到列表,可以用list()函数将类列表转换为真正的列表
print(list(dict1.keys()))
[‘A’, ‘B’, ‘C’]
#12显示字典中所有的值
print(dict1.values())
for one in dict1.values():
print(one)
apple
bytes
cats
#13遍历字典中所有的元素:k,v是简写的变量名
for k,v in dict1.items():
print(k,v)
A apple
B bytes
C cats
14#json模块:loads方法可以将json格式转换为字典
#json本身不是字典,他是字符串
import json
data1=’’’{
“aac003” : “tom”,
“tel” : “13959687639”,
“crm003” : “1”,
“crm004” : “1”
}’’’
print(type(data1))
data2=json.loads(data1) #loads方法可以将json格式转换为字典
print(type(data2))
<class ‘str’>
<class ‘dict’>
15.dumps方法可以将字典转回json格式
print(type(json.dumps(data2))) #dumps方法可以将字典转回json格式
<class ‘str’>
16#load于loads的区别,
前者是从文件中读取json文本,后者是在变量中读取

with open('d:/json3.txt') as file1:
    temp3=json.load(file1)
print(type(temp3))
<class 'dict'>

17.#dump与dumps的区别
,前者是将字典转换成json数据写入到文件中,后者是直接在代码中将字典转换成json格式

with open('d:/json30.txt','w+') as file2:
    json.dump(data2,file2)
    file2.seek(0)
    print(type(file2.read()))
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值