python基础之字典及其常见操作

################  字典 Dictionary  ################ 
# 格式:   字典名 = {键值1: 实值1, 键值2: 实值2, .....}
# key1:value1 ->统称为 键值对
# key1:value1 ->称为元素1;  key2:value2 ->称为元素2; .....
# 键值数据类型的选择: 必须是不可变的。键值不能为字典/列表,可以为元组

# 字典的key 一般都是使用字符串
my_dict = {"class": "001","name": "小明", "age": 22}
print(len(my_dict))   # 三个元素(键值对)
#<<<3

# key和value是1对1的关系 ,可以通过一个key 获取key对应 的value)
# 字典 key的名字不能重复 (如果key重复,value会覆盖)
my_dict = {"class": "001","name": "小明","name":"覆盖" ,"age": 22}
print(my_dict)
#<<<  {'class': '001', 'name': '覆盖', 'age': 22}

## 字典的value 没有规定(可以重复的)
my_dict = {"class": "001","name": "小明", "age": 22,"no": "001"}
print(my_dict)
#<<< {'class': '001', 'name': '小明', 'age': 22,"no": "001"}

## 定义一个特殊 (空字典)
my_dict1 = {}
print(len(my_dict1))
#<<< 0
print(type(my_dict1))
#<<< <class 'dict'>

######## 字典的常见操作 ######## 
## 字典是无序的 可变的

# <1>修改元素
# 字典的每个元素中的value 是可以修改的
## 通过key 获取 key对应的value的值
my_dict = {"class": "001","name": "小明", "age": 22}
print(my_dict["age"])
#<<< 22
## 通过key 修改key对应的value的值
my_dict["age"] = 100
print(my_dict)
#<<< {'class': '001', 'name': '小明', 'age': 100}

# <2>添加元素
## 格式: 字典名[key] = value
# 如果这个key不存在 就添加一组键值对;如果这个key存在 会吧key原来的value的值进行覆盖
my_dict = {"class": "001","name": "小明", "age": 22}
my_dict["no"] = "2333"
print(my_dict)
#<<< {'class': '001', 'name': '小明', 'age': 22, 'no': '2333'}
my_dict["name"] = "小红"
print(my_dict)
#<<< {'class': '001', 'name': '小红', 'age': 22, 'no': '2333'}

# <3>删除元素
### 对字典进行删除操作,有2种方法:
# del (python内置函数)
# clear()

### 删除键值对;   
# 格式: del 字典名[key]
my_dict = {"class": "001","name": "小明", "age": 22}
del my_dict["age"]    # 删除 "age": 22
print(my_dict)
#<<< {'class': '001', 'name': '小明'}

### clear 删除字典中的所有的元素
my_dict = {"class": "001","name": "小明", "age": 22}
my_dict.clear()  # 等价于 my_dict = {} 或 my_dict = dict()
print(my_dict)
#<<< {}

######## 字典的方法 ######## 
# <1>len()
# 计算字典中,键值对(元素)的个数
my_dict = {"class": "001","name": "小明", "age": 22}
L = len(my_dict)
print("元素数:%d" % L)
#<<< 元素数:3

# <2>keys
#  keys()函数以列表 返回一个字典所有的键。
my_dict = {"class": "001","name": "小明", "age": 22}
keys = my_dict.keys()
print(keys)
# <<< dict_keys(['class', 'name', 'age'])
print(list(keys))    # 转成list类型
# <<< ['class', 'name', 'age']

# <3>values
# values()方法返回一个迭代器,可以使用 list() 来转换为列表,列表为字典中的所有值。
my_dict = {"class": "001","name": "小明", "age": 22}
values = my_dict.values()
print(list(values))
#<<< ['001', '小明',22]

# <4>items
# items()函数 以列表 返回可遍历的(键, 值) 元组数组。
# 最外层是一个列表 每个元素是一个元组
my_dict = {"class": "001","name": "小明", "age": 22}
items = my_dict.items()
print(items)
#<<< dict_items([('class', '001'), ('name', '小明'), ('age', 22)])
print(list(items))
#<<< [('class', '001'), ('name', '小明'), ('age', 22)]
my_list = list(items)
print(my_list[2][0])    # 获取age




 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值