python字典讲解

#简单的字典有key,value  组成比如:
stu_info ={
'username':'xl',
'password': '123456',
'money': 20,
'addr': '上海浦东'
}

d1 = {}  # 创建字典
d2 = dict()  # 创建空字典

# 添加字典数据
d1['name'] = '胖妞'
d1['age'] = 18
d1.setdefault('class', '双子座')
print('之前的', d1)
d1.setdefault('age', 38) # 已存在的key,无法新增数据,不会修改原来的值
d1['name'] = '胖妞2' # 修改原来的值
print('之后的', d1)

# 修改字典数据
d1['name'] = '胖妞3'

# 取值

print(d1['name']) # key如果不存在 报错 keyError

print("get-->age:", d1.get('age', 0)) # key如果不存在返回None,也加逗号返回默认值

print(d1.keys()) # 取所有keys

print(d1.values()) # 取所有values

# 删除
# d1.pop('name')
del d1['class']
# d1.popitem()#随机删除一个key

# d1.clear() #清空

d2 = {"sex": "女"}

d1.update(d2)

print(d1)

list1 = [
{
"id": 2,
"name": "矿泉水",
"sex": "未知",
"age": 38,
"addr": "天通苑123",
"grade": "双子座123",
"phone": "12123654311",
"gold": 10
},
{
"id": 5668,
"name": "矿泉水",
"sex": "未知",
"age": 38,
"addr": "天通苑",
"grade": "双子座",
"phone": "12123654564",
"gold": 3202
}


]

#1、统计一下现有学生总共有多少金币
#2、找出金币小于100金币的学生姓名
#3、金币大于500金币,扣除300金币,小于等于100的人,加上200金币
all_gold=0
for user in list1:
gold=user.get('gold')
all_gold+=gold
if gold<=100:
print("%s金币小于100"%user.get('name'))
user['gold'] = gold + 200
if gold>500:
user['gold'] = gold - 300
print(list1)
print(all_gold)

转载于:https://www.cnblogs.com/skyxiuli/p/10627312.html

当然,我很乐意为您解释Python中的字典。在Python中,字典是一种可变的数据类型,它用于存储值对(key-value pairs)。字典是通过大括号{}来表示的,其中每个值对由冒号:分隔,和值之间用逗号分隔。 以下是一个示例字典: ``` my_dict = {'name': 'John', 'age': 25, 'city': 'New York'} ``` 在这个例子中,字典`my_dict`包含三个值对。可以是任何不可变的数据类型,如字符串、数字或元组。值可以是任何数据类型,包括字符串、数字、列表、元组或其他字典。 您可以使用来访问字典中的值。例如,要访问字典中的'name'对应的值,可以使用如下语法: ``` name = my_dict['name'] ``` 您还可以使用`get()`方法来访问字典中的值。例如: ``` name = my_dict.get('name') ``` 如果不存在,`get()`方法将返回`None`,而使用方括号访问语法将引发`KeyError`异常。 字典是可变的,这意味着您可以添加、修改或删除值对。例如,要添加一个新的值对,可以使用以下语法: ``` my_dict['email'] = 'john@example.com' ``` 要修改现有对应的值,可以通过给该分配一个新值来实现: ``` my_dict['age'] = 26 ``` 要删除一个值对,可以使用`del`关字: ``` del my_dict['city'] ``` 这只是字典的一些基本概念,Python字典还提供了许多其他有用的方法和操作。希望这个简单的解释能够帮助您理解Python中的字典。如果您有任何进一步的问题,请随时提问!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值