从零学习Python:三目运算符以及字典

一、三目运算符

if - else

语法:

表达式2 if 表达式1 else 表达式3

判断表达式1是否为True,如果为True整个运算结果就是表达式2的值 ,否则整个运算结果是表达式3的值。

案例:

age = 18
result = '未成年' if age < 18 else '成年'
print(result)

二、认识字典

字典和其他序列有着很多共同点

举例:

列表:

stu1 = ['小明', 28, '男', 170, 63, 80, 89, 99]
print(stu1[0], stu1[-1])

使用字典:

stu2 = {'name': '小明', 'age': 28, 'gender': '男', '身高': 170, '体重': 63, '语文': 80, '英语': 89, '数学': 99}
print(stu2['name'], stu2['数学'])

列表可以保存多个意义相同的数据,而字典可以同时保存的多个意义不同的数据。

三、什么是字典

  1. 字典是容器型数据类型,将{}作为容器的标志,里面多个键值对用逗号隔开:{键1:值1, 键2:值2, 键3:值3,…}
  2. 字典是可变的(支持增删改);字典是无序(不支持下标操作)
  3. 元素的要求:字典的元素是键值对;键的要求:a.键必须是不可变类型的数据(一般使用字符串) b.键是唯一的;值没有要求

空字典:dict1 = {}

字典的类型:dict

字典是无序的;键的值不可变且键是唯一的。

四、字典的查

(一)查单个字典

1)字典[键]:获取字典中指定键对应的值, 如果键不存在会报错
2)字典.get(键):获取字典中指定键对应的值;如果键不存在不会报错,并且返回None
3)字典.get(键, 默认值):获取字典中指定键对应的值;如果键不存在不会报错,并且返回默认值

案例:查字典中狗的名字和属性

dog = {'name': '旺财', 'age': 3, 'breed': '土狗', 'gender': '母狗'}

法一:

print(dog['name'], dog['gender'])

法二:

print(dog.get('name'), dog.get('gender'))
(二)遍历字典

语法:

方法1forin 字典:
    循环体(变量获取的到是键)
    
方法2for,in 字典.items():
    循环体
dog = {'name': '旺财', 'age': 3, 'breed': '土狗', 'gender': '母狗'}

方法一:

for x in dog:
    print( x, dog[x])

方法二:

for key, value in dog.items():
    print(key, value)

五、增删改:

(一)改 (修改某个键对应的值)

语法:

字典[] = 新值   -  将字典中指定键对应的值修改成指定的新值
dog = {'name': '旺财', 'age': 3, 'breed': '土狗', 'gender': '母狗'}
print(dog)      # {'name': '旺财', 'age': 3, 'breed': '土狗', 'gender': '母狗'}

dog['name'] = '财财'
print(dog)      # {'name': '财财', 'age': 3, 'breed': '土狗', 'gender': '母狗'}
(二)增(添加键值对)

语法:

1)字典[] =-    如果键不存在,就在字典中添加键值对; 如果键存在会修改键值对的值
2)字典.setdefault(,)   -  在字典中添加指定的键值对;如果键存在会保留原来的值(不会修改)
dog = {'name': '旺财', 'age': 3, 'breed': '土狗', 'gender': '母狗'}
print(dog)      # {'name': '旺财', 'age': 3, 'breed': '土狗', 'gender': '母狗'}

dog['color'] = '黄色'
print(dog)      # {'name': '旺财', 'age': 3, 'breed': '土狗', 'gender': '母狗', 'color': '黄色'}

dog.setdefault('weight', 15)
print(dog)      # {'name': '旺财', 'age': 3, 'breed': '土狗', 'gender': '母狗', 'color': '黄色', 'weight': 15}

setdefault()可以保留原来的字典中的值,修改原来不存在的值

案例:

goods_list = [
    {'name': '泡面', 'price': 4, 'discount': 0.9},
    {'name': '火腿肠', 'price': 1.5},
    {'name': '矿泉水', 'price': 2, 'discount': 0.8},
    {'name': '面包', 'price': 5.5},
    {'name': '酸奶', 'price': 7.5}
]
# 给没有折扣商品添加折扣值为1
for goods in goods_list:
    goods.setdefault('discount', 1)
print(goods_list)
(三)删(删除键值对)

语法:

  1. del 字典[键] - 删除字典中指定键对应的键值对
  2. 字典.pop(键) - 取出字典中指定键对应的值
dog = {'name': '旺财', 'age': 10, 'breed': '土狗', 'gender': '母狗', 'color': '黄色', 'weight': 15}
print(dog)      # {'name': '旺财', 'age': 10, 'breed': '土狗', 'gender': '母狗', 'color': '黄色', 'weight': 15}


del dog['gender']
print(dog)      # {'name': '旺财', 'age': 10, 'breed': '土狗', 'color': '黄色', 'weight': 15}

# 这里的pop方法是把值拿出来,原来的值还能被打印出来
color1 = dog.pop('color')
print(dog)      # {'name': '旺财', 'age': 10, 'breed': '土狗', 'weight': 15}
print(color1)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值