python中定义字典数据类型使⽤什么符号_python数据类型之
字典类型-dict
1.dict-基本使⽤
1.⽤途:⽤来存多个值,单每⼀个值都有⼀个key与之对应,
key对值有描述性的功能,存储多个值表⽰的不同不同状态
2.定义:{}内⽤逗号分隔开多个元素,每⼀个元素都是key:value的形式
value可以是任意数据类型,
但是key必须为不可变类型, key通常应该是字符串类型
d={'x':1,'y':2} #d=dict({'x':1,'y':2})
# d=dict(a=1,b=2,c=3)
print(d)
dic={[1,2,3]:'a'} 直接报错        key不能是列表    字典的key是不可以变类型
dic={{'x':1}:'a'} 直接报错
3.常⽤操作+内置的⽅法values什么意思
1.按key存取值:可存可取
d={'x':1,'y':2}                      不能赋值,通过key修改,可以增加
d['x']=100
print(d)                              key不存在是,会报错
d['z']=3
print(d)
2. 长度len
d={'x':1,'y':2}
print(len(d))
3、成员运算in和not in
d={'x':1,'y':2}
print('x' in d)
4.删除 del pop popitem
d={’x':1,‘y':2} del直接删除
del d['x']
l={'a':1,'b':2}
se=l.pop('a') 根据key删除
print(l)
print(se)
# res=d.popitem() 随机删除
popitem # print(d)
# print(res)
5、键keys(),值values(),键值对items()key和value都取出
keys=msg_dic.keys()                  keys后是⼀个整体
print(keys)
for k in keys:
print(k)
print(list(keys)                              通过列表转换⽅式取出
vals=msg_dic.values()                    同上
# print(vals)
# print(list(vals))
# for k,v in msg_dic.items(): #k,v=('apple', 10) items取出key,和值两个# print(k,v)
6、循环
msg_dic={
'apple':10,
'tesla':100000,
'mac':3000,
'lenovo':30000,
'chicken':10,
}
# 只取key
# for k in msg_dic:
# print(k,msg_dic[k])
# for k in msg_dic.keys():
# print(k,msg_dic[k])
# 只取value
# for v in msg_dic.values():
# print(v)
#取key和value
# for k,v in msg_dic.items(): #k,v=('apple', 10) items取出key,和值两个# print(k,v)
7. 查看get
d={'x':1,'y':2,'z':3}
# ('xxxx')              key不存在 提⽰none
# print(v)
d['xxx']=100
print(d)                            key不存在是,会报错
8.update
# d={'x':1,'y':2,'z':3}
# d1={'a':1,'x':1111111}              更新字典
# d.update(d1)
# print(d)
9.fromkeys ⽣成⼀个初始字典 值是None
l=['name','age','sex']
d=dict.fromkeys(l,None)
print(d)
10.setdefault 向字典⾥⾯加值,有key的话返回原值,没有直接加
info={'name':'egon','age':18,'sex':'male'}
# 如果字典中有setdefault指定的key,那么不改该key对应的值,返回原的value # res=info.setdefault('name',’pwd')          有返回值
# print(info)
# print(res)
# 如果字典中没有setdefault指定的key,那么增加⼀个key:value,返回新的value # info.setdefault('height',1.80)                    返回⼀个新赋值
# print(info)
# info={'age':18,'sex':'male'}
# v=info.setdefault('name','浩哥')
# print(v)
s='hello alex alex say hello sb sb' ⽤字典统计同名出现的次数
l=s.split()
print(l)
d={}
# d={'hello':2,'alex':2}
for word in l: #word='alex'
1 # d[word]=l.count(word) #d['alex']=
2 每个都赋值
2 d.setdefault(unt(word)) 赋值过的
print(d)
⼆:该类型总结
1 存⼀个值or存多个值
可以存多个值,值都可以是任意类型,⽽key必须是不可变类型,通常应该是不可变类型中字符串类型2 有序or⽆序
⽆序
3 可变or不可变
可变
d={'x':1,'y':2}
print(id(d))
d['x']=1111
print(id(d))