文章目录:
- 一.字典(dict)的概念:
- 二.字典(dict)的定义:
-
- 1.一般格式:
- 2.空字典:
- 3.举例:
- 注意:
- 三.字典(dict)的一些基本操作:
-
- 1.增:
- 2.删:
- 3.查:
- 4.改:
- 四.字典(dict)的常见操作:
- 五.字典三种取值方式:
-
- 1.value=字典名[key]:
- 2.setdefault:
- 3.get:
- 六.字典的遍历:
-
- 1.key:
- 2.value:
- 3.item:
- 4.依次打印key和value:
- 5.元素值和对应的下标索引(enumerate()):
一.字典(dict)的概念:
Python字典是另一种可变容器模型,可存储任意类型对象。如字符串、数字、元组等其他容器模型 因为字典是无序的所以不支持索引和切片。
二.字典(dict)的定义:
1.一般格式:
格式: 字典名={元素1,元素2,...}
元素以键值对存在==key(键值):value(实值)
2.空字典:
格式: 字典名={}
或者 字典名=dict()
3.举例:
代码语言:javascript复制dict = {
"nane": "张三", "age": 20, "sex": "男"}
dict1={
}
dict2={
}
print(dict)
print(dict1)
print(dict2)
结果:
注意:
- key不可以重复,否则只会保留第一个;
- value值可以重复;
- key可以是任意的数据类型,但不能出现可变的数据类型,保证key唯一;
- key一般形式为字符串。
三.字典(dict)的一些基本操作:
1.增:
格式: 字典名[new key]=new value
# 定义一个字典
dict = {
"nane": "张三", "age": 20, "sex": "男"}
# 增加元素
dict["score"] = 100
print(dict)
2.删:
格式:del 字典名[key]
# 定义一个字典
dict = {
"name": "张三", "age": 20, "sex": "男"}
#删除元素
del dict["name"]
print(dict)
3.查:
格式: value=字典名[key]
# 定义一个字典
dict = {
"name": "张三", "age": 20, "sex": "男"}
#查找元素
value=dict["sex"]
print(value)
4.改:
格式: 字典名[key]=new value
# 定义一个字典
dict = {
"name": "张三", "age": 20, "sex": "男"}
#修改元素
dict["name"]="李四"
print(dict)
注意:也可以使用clear()
去进行清空字典
#清空字典
dict.clear()
print(dict)
四.字典(dict)的常见操作:
名称 | 解释 |
---|---|
len() | 测量字典中键值对个数 |
keys() | 返回字典中所有的key |
values() | 返回包含value的列表 |
items() | 返回包含(键值,实值)元组的列表 |
in not in | 判断key是否存在字典中 |
举例说明: |
# 定义一个字典
dict = {
"name": "张三", "age": 20, "sex": "男"}
#常见操作
#len():测量字典中的键值对
print(len(dict))
#keys():返回所有的key
print(dict.keys())
#values():返回包含value的列表
print(dict.values())
#items():返回包含(键值,实值)元组的列表
print(dict.items())
#in not in
if 20 in dict.values():
print("我是年龄")
if "李四" not in dict.values():
print("李四不存在")
五.字典三种取值方式:
1.value=字典名[key]:
这种是比较简单的方式,通过key值进行取值:
代码语言:javascript复制#字典的定义
my_dict={
"name":"小红","age":20,"sex":"女"}
#1.value=字典名[key]
print(my_dict["age"])
2.setdefault:
- 格式:
字典名.setdefault(k,value)
- 如果key值存在,那么返回对应字典的value,不会用到自己设置的value;
- 如果key值不存在.返回None,并且把新设置的key和value保存在字典中;
- 如果key值不存在,但设置了value,则返回设置的value;
#字典的定义
my_dict={
"name":"小红","age":20,"sex":"女"}
#2.setdefault: 格式:字典名.setdefault(k,default)
#如果key存在返回对应的value
print(my_dict.setdefault("name"))
print(my_dict.setdefault("name","111"))
print(my_dict)
#如果key不存在,返回None,并且将设置的加入字典中
print(my_dict.setdefault("name1"))
print(my_dict.setdefault("name1","555"))
print(my_dict)
3.get:
- 格式:
字典名.get(k,value)
- 如果key值存在,那么返回对应字典的value,不会用到自己设置的value;
- 如果key值不存在.返回None,但是不会把新设置的key和value保存在字典中;
- 如果key值不存在,但设置了value,则返回设置的value;
#字典的定义
my_dict={
"name":"小红","age":20,"sex":"女"}
#3.get: 格式:字典名.get(k,default)
#如果key存在返回对应的value
print(my_dict.get("name"))
print(my_dict.get("name","李四"))
#如果key不存在,返回None,设置的不加入字典中
print(my_dict.get("name2"))
print(my_dict.get("name2","王五"))
print(my_dict)
以上3部分程序运行结果:
六.字典的遍历:
1.key:
代码语言:javascript复制#1.key
for i in my_dict.keys():
print(i)
2.value:
代码语言:javascript复制#2.value
for i in my_dict.values():
print(i)
3.item:
代码语言:javascript复制#3.所有项(元素) item
for i in my_dict.items():
print(i)
4.依次打印key和value:
代码语言:javascript复制#4.依次打印key和value,通过索引
for key,value in my_dict.items():
print(key,value)
5.元素值和对应的下标索引(enumerate()):
代码语言:javascript复制#5.元素值和对应的下标索引 enumerate(列表名)
for i in enumerate(my_dict):
print(i)
运行结果:
关于字典的介绍,以后有新知识了会补充,有建议的小伙伴欢迎提出…
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/185450.html原文链接:https://javaforall.cn