【Python基础】第十篇 | Python字典(定义/增加/修改/删除/查询/遍历)用法详解

字典

1.字典dict,字典中的数据是有键(key)值(value)成对组成的(键表示数据的名字,值就是具体的数据)
2.在字典中一组键值对是一个数据,多个键值对之间使用逗号隔开
变量 = {key:value,key:value,…}
3.一个字典中的键是唯一的,不能重复的,值可以是任意数据
4.字典中的键 一般都是字符串,可以是数字,但不能是列表

# 1.使用 类实例化的方法
my_dict = dict()
print(type(my_dict),my_dict) #  {}

# dict()不能转列表和元组,字符串
# 2.直接使用{}定义
# 2.1 空字典
my_dict1 = {}
print(type(my_dict1),my_dict1) #  {}
# 2.2 非空字典,小明('name') 18('age') 1.71('height') True(is_men) 抽烟 喝酒 烫头('like')
my_dict2 ={'name':'小明','age':18,'height':'1.71',"is_men":True,'like':['抽烟','喝酒','烫头']}
print(my_dict2)
print(len(my_dict2)) # 5
  • 增加和修改操作

语法:
字典[键]=数据值
1.如果键已经存在,就是修改数据值
2.如果键不存在,就是添加数据(即添加键值对)

# 定义字典 小明 18 爱好
my_dict= {"name":"小明","age":18,"like":["抽烟","喝酒","烫头"]}
print(my_dict)
# 1.添加性别信息 sex
my_dict['sex']="男"
print(my_dict) # {'name': '小明', 'age': 18, 'like': ['抽烟', '喝酒', '烫头'], 'sex': '男'}
# 2.修改年龄为19
my_dict['age']=19
print(my_dict) # {'name': '小明', 'age': 19, 'like': ['抽烟', '喝酒', '烫头'], 'sex': '男'}
# 3.添加一个爱好,学习 --> 本质是向列表中添加一个数据
my_dict['like'].append("学习")
print(my_dict) # {'name': '小明', 'age': 19, 'like': ['抽烟', '喝酒', '烫头', '学习'], 'sex': '男'}
  • 删除

删除指定键值对
del 字典[键]
字典.pop(‘键’) ‘键’ 必须写
清空
字典.clear()

# 删除 sex 键值对
del my_dict["sex"]
print(my_dict) # {'name': '小明', 'age': 19, 'like': ['抽烟', '喝酒', '烫头', '学习']}

# 字典.pop('键')
my_dict.pop('age')
print(my_dict)  # {'name': '小明', 'like': ['抽烟', '喝酒', '烫头', '学习']}

# 删除抽烟的爱好 --> 本质操作是在列表中删除 数据值
my_dict['like'].pop(0)
# my_dict['like'].remove('抽烟')
print(my_dict) # {'name': '小明', 'like': ['喝酒', '烫头', '学习']}
# 清空键值对
my_dict.clear()
print(my_dict) # {}
  • 查询-根据键获取对应的值

字典中没有下标的概念,想要获取数据值,要使用key(键)来获取
使用 字典[键]
字典[键]
1.如果键存在,返回键对应的数据值
2.如果键不存在,会报错
使用 字典.get(键)
字典.get(键,数据值)
1.数据值一般不写,默认是None
返回:
1.如果键存在,返回键对应的数据值
2.如果键不存在,返回的是括号中书写的数据值(None)
一般建议使用get 方法

my_dict= {"name":"小明","age":19,"like":["抽烟","喝酒","烫头"]}
# 1.获取名字
print(my_dict["name"]) # 小明
print(my_dict.get("name")) # 小明
# 2.获取sex性别
# print(my_dict['sex']) # 代码会报错,原因key不存在
print(my_dict.get('sex')) # None
print(my_dict.get('sex','保密')) # 保密

# 3.获取第二个爱好
print(my_dict['like'][1]) # 喝酒
print(my_dict.get('like')[1]) # 喝酒
  • 字典的遍历

对字典的键进行遍历
for 遍历 in 字典:
print(变量) # 变量就是字典的key,键

for 变量 in 字典.keys(): # 字典.keys()可以获取字典所有的键
print(变量)

对字典的值进行遍历

for 变量 in 字典.values(): # 字典.values() 可以获取字典所有的值
print(变量)

对字典的键值对进行遍历
#变量1 就是键,变量2 就是键对应的值
for 变量1,变量2 in 字典.items():
print(变量1,变量2)

# 定义字典
my_dict= {"name":"小明","age":18,"sex":"男"}
# 1.变量字典的键
for k in my_dict:
    print(k)

for k in my_dict.keys():
    print(k)

print('-'*30)
# 2.遍历字典的值
for v in my_dict.values():
    print(v)
print('-'*30)

# 2.遍历键值
for k,v in my_dict.items():
    print(k,v)

容器部分总结

1.字符串,列表,元组支持假发运算

str1 = 'hello'+' world'
print(str1) # hello world
list1=[1,2]+[3,4]
print(list1) # [1, 2, 3, 4]
tuple1=(1,2)+(3,4) 
print(tuple1) # (1, 2, 3, 4)

# 字符串,列表,元组 支持 乘一个数据
str1 = 'hello ' *3
print(str1) # hello hello hello
list1=[1,2]*3
print(list1) # [1, 2, 1, 2, 1, 2]
tuple1=(1,2)*3
print(tuple1) # (1, 2, 1, 2, 1, 2)

#3.len() 在容器中都可以使用
#4. in 关键字在容器中都可以使用,注意,在字典中判断的是字典的键是否存在

你可能感兴趣的:(Python,python)