python字典
【摘要】
#字典的特点,字典的键通常采用字符串,但也可以用数字、元祖等不可变的类型。#字典值可以是任意类型。#字典也可称为关联数组或散列表,它通过键映射到值。字典是无序的,它通过键来索引映射的值,而不是通过位置来索引。#字典属于可变映射,通过索引来修改键映射的值。#字典长度可变,可为字典添加“键:值“对。#字典可以任意嵌套,即键映射的值可以使用一...
-
#字典的特点,字典的键通常采用字符串,但也可以用数字、元祖等不可变的类型。
-
#字典值可以是任意类型。
-
#字典也可称为关联数组或散列表,它通过键映射到值。字典是无序的,它通过键来索引映射的值,而不是通过位置来索引。
-
#字典属于可变映射,通过索引来修改键映射的值。
-
#字典长度可变,可为字典添加“键:值“对。
-
#字典可以任意嵌套,即键映射的值可以使用一个字典。
-
#字典存储的是对象的引用,而不是对象本身。
-
#字典的基本操作,包括床架字典、求长度、关系判断和索引等。
-
#1.创建字典,可用来多种方法来创建字典。例如:
-
-
#字典的常用方法
-
#1.clear()删除字典中的全部对象
-
x=dict(name='john',age=25) #使用dict函数创建字典对象;
-
print(x)
-
x.clear()
-
print(x)
-
#2.copy()方法,复制字典对象。
-
x={'name':'hobby','age':25}
-
y=x
-
print(y)
-
print(x)
-
y['name']='lili'
-
print(x)#通过修改y,那么x也直接发生变化;
-
#判断引用是否相同。
-
d=y is x
-
print(d)
-
#使用copy赋值对象。
-
x={'name':'john','age':25}
-
y=x.copy() #引用的是复制的对象;
-
print(x)
-
print(y)
-
print('修改前------')
-
#通过y修改字典,x不发生任何变化;
-
y['name']='sb'
-
print(x)
-
print(y)
-
#判断引用是否相同;
-
print(y is x)
-
#get(key[,default])
-
#返回键key映射的值,如果键key不存在,则返回空值。可以用default参数指定不存在的键的返回值。例如;
-
x={'name':'hone','age':25}
-
print(x.get('name')) #通过键得到值
-
print(x.get('sex')) #如果该键不存在,则返回为空;
-
print(x.get('sex','不知道')) #如果键不存在,则返回指定值“不知道”
-
-
#pop(key[,default])
-
#从字典中删除键,并返回映射值。若键不存在,则返回default;未指定default参数时会报错。
-
x={'name':'jack','age':25}
-
print(x.pop('name'))
-
print(x)
-
#如果删除的键不存在,则返回指定的默认值,没有默认值,则报错。
-
print(x.pop('height','没有身高'))
-
-
#如果删除的键不存在,则会报错。
-
# print(x.pop('sex'))
-
#popitem(),从字典删除并返回键值对元祖。空字典调用该方法,会产生keyerror错误。
-
x={'name':'lily','age':25,'height':175}
-
#随机删除一个键值对
-
print(x.popitem())
-
print(x)
-
#再次随机删除一个键值对;
-
print(x.popitem())
-
print(x)
-
print(x.popitem())
-
print(x)
-
# print(x.popitem())
-
# print(x)
-
#第三次删除完毕后,已经为空,则再次删除,将会报错。
-
#setdefault(key[,default]),该方法用于返回映射值或者为字典添加键值对。指定键key在字典中存在时,返回映射值。若指定键
-
#不存在,则添加“可以:default”键值对,省略default时,映射值默认为none。
-
x={'name':'jack','age':25}
-
#如果该键存在,返回指定键的映射值
-
x.setdefault('name')
-
#如果该键不存在,则为字典添加该键值对,该键值对对应的值为null。
-
x.setdefault('sex')
-
print(x)
-
#update(other)
-
#该方法用于为字典添加键值对。参数other可以是另外一个字典或用赋值格式表示的元祖。若字典已经存在同名的键。
-
#则应设置被覆盖。
-
x={'name':'john','age':25}
-
#添加键值对,并覆盖同名键的映射
-
x.update({'age':30,'sex':'male'})
-
print(x)
-
#修改映射值
-
x.update(name='Mike')
-
print(x)
-
#添加键值对;
-
x.update(code=110,address='network')
-
print(x)
文章来源: aaaedu.blog.csdn.net,作者:tea_year,版权归原作者所有,如需转载,请联系作者。
原文链接:aaaedu.blog.csdn.net/article/details/81705843
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)