9-Python数据类型二——散列类型和字典

Python数据类型二

2.1 散列类型

  1. 数值类型:int、float、bool——》存储一个数值
  2. 序列类型:str、list、tuple——》存储多个数据

散列类型的特征:无序、内部元素不重复

2.1.1 字典 dict

用来保存一些典型的对应关系的数据类型,特点就是用键值对的方式来存储数据

键值:类似于我们生活中的字典,根据拼音找某个字,拼音就是key(键),字就是value(值)

字典查询速度快

键值对的语法:

key:value——》  (:)

由于字典是用键值对的方式进行存储数据,更适合去描述一个对象

语法格式:

call = {'c':'11','v':'13','j':'15'}
user = {'姓名':'川','年龄':18,'工作':'python'}

输出方式:
字典名[]
print(call['c'])
print(user['工作'])

11341
python讲师
  • 字典是无序的,没有下标,是直接通过键值对的方式存储数据的,所以通过键来取值

    • 字典名[键]
  • 不重复,字典里的键(key)是不可以重复,如果重复的话则取最后一个重复键的值

    dict1 = {'a':1,'b':2,"a":3,"a":4,"a":5}
    print(dict1)  # 默认取最后一个键
    {'a': 5, 'b': 2}
    
  • 可变性,字典里面的数据是可变的

    dict1 = {'a':1,'b':2,"a":3,"a":4,"a":5}
    dict1['b'] = 100
    print(dict1)
    
    {'a': 5, 'b': 100}
    

当我们想要表示一组固定信息的时候,用字典可以更加的直观

key是字典的关键数据,程序对字典的操作都是基于key的

通过key访问value
scores = {'语文':89}
print(scores['语文'])  #  89

通过key添加key-value对
scores = {'语文':89}
scores['数学'] = 93
scores[92] = 5.7
print(scores)   #  {'语文': 89, '数学': 93, 92: 5.7}

通过key删除key-value对,使用del语句
scores = {'语文':89}
scores['数学'] = 93
scores[92] = 5.7
del scores['语文']
del scores['数学']
print(scores)   # {92: 5.7}


通过key修改key-value对,新赋的值就会覆盖原有的值
cars = {'BMW':88,'benchi':83,'tesila':95}
cars['benchi'] = 4.3
cars['tesila'] = 3.8
print(cars)

通过key判断指定key-value对是否存在,可以使用in或者not in,都是基于key来判断的
cars = {'BMW':88,'benchi':83,'tesila':95}
cars['benchi'] = 4.3
cars['tesila'] = 3.8
print('tesila' in cars)  # True
print('baoshijie' in cars) # False
print('BYD' not in cars)  # True

只能通过key访问value,使用的也是方括号语法,

字典的key可以是任意不可变类型

如果程序中要是用的字典的key都是整数类型的话,我们可以考虑不用字典,用列表

列表的索引是从0开始连续增大的,但是字典的索引即使是整数类型,也不需要从0开始,而且不需要连续

列表不允许对不存在的索引赋值,但是字典允许直接对不存在的key赋值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JC03

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值