Python---4.散列类型与操作方法

集合:使用“{value}”定义集合,大括号内要写入内容,或者使用set()的方法来定义集合。集合的三大特点唯一性,无序性,确定性。

  1. 集合的三大特性:
    1. 唯一性:不能有重复的值,会自动去重。
    2. 无序性:无法用索引来取值。
    3. 确定性:集合的子元素一定要是确定的,无法使用可变类型。
  2. 集合的运算:
    1. 交集:运算符“&”,两个集合内相同的元素。
    2. 并集:运算符“|”,两个集合内,全部的元素,去除重复值。
    3. 差:运算符“-”,两个集合内,相对于某一个集合与另一个的差值。
      a = {1,2,3,4,5}
      b = {3,4,5,6,7}
      
      print(a & b)    #{3, 4, 5}
      print(a | b)    #{1, 2, 3, 4, 5, 6, 7}
      print(b - a)    #差:b相对于a来说的差{6,7}
  3. 增:
    1. add():单独添加一个元素。
      a = {1,2,3,4,5}
      a.add((1,2,3,4))  #添加元组,元组是不可变类型
      print(a)
    2. update,类似于追加数据。
      a = {1,2,3}
      a.update('hello world')    #会将字符串拆分成单个元素追加
      print(a)
  4. 删:
    1. pop():删除一个元素,查询再删,集合内无法传值进行删除元素。
      a = {1,2,3,4,5}
      print(a.pop())
      print(a)
    2. remove():删除集合中的指定数据,如果数据不存在则报错。
      a = {1,2,3,4,5}
      a.remove(5)  #返回None
      print(a)
  5. dir()方法:查看该对象下所包含的方法名。
字典:字典是散列类型中最常用的类型,字典的结构是以键值对的形式,key:value。
  1. 定义:使用“{key:value}”定义字典,大括号内输入键值对{key:value}的形式的值,也可以用dict()的方法定义字典。
    # s = {key:value}    
    #
    # x = dict()    用doct()的方法来定义字典
    #
    a = {'name':'张三', 'age':'28'}
  2. 增:setdefault,有则查,无则增,通过key来查的。
    a = {'name':'张三', 'age':'28'}
    a.setdefault('sex')
    print(a)    
    #先查询原集合里面有没有sex的key,没有就会增加一个value为空,key为sex的值。
    
    b = {'name':'张三', 'age':'28'}
    b.setdefault('sex','man')
    print(b)
    #先查询原集合里面有没有sex:man的值,没有就会增加一个sex:man。
  3. 删:
    1. clear():清空,清除所有数据,只保留了一个空的字典。
    2. pop():删除并返回指定key的value值。
      a = {'name': '张三', 'age': 20, 'gender': '男'}
      a.pop('age')  #删除并返回key为age的value
      print(a)
    3. popitem():不指定元素,删除并返回字典中最后一组键值对。
  4. 改:update():有则改,无则增,语法:字典对象.update({key:value})
    a = {'name':'张三', 'age':'28'}
    a.update({'name':'李四'})
    print(a)    #修改key为name的value
    
    b = {'name':'张三', 'age':'28'}
    b.update({'sex':'man'})
    print(b)    #没有sex的key,会先修改(也是增加一个键值对)
  5. 查:
    1. get():语法,字典对象.get(key),查询单个key的value,当没有查询到值的时候会返回一个空。
    2. 索引:语法,字典对象['key'],没有查询到值的时候会报错。
      a = {'name':'张三', 'age':'28','sex':'man','class':"23"}
      
      print(a.get('class'))
      #print(a['classs'])    使用索引的方法查询
    3. keys():查找所有的键。
      a = {'name':'张三', 'age':'28','sex':'man','class':"23"}
      print(a.keys())
      #返回字典对象里面的所以的key
      #dict_keys(['name', 'age', 'sex', 'class']) 这是一个字典里面的key值的类型。
    4. values():查找所有的值。
      a = {'name':'张三', 'age':'28','sex':'man','class':"23"}
      print(a.values())
    5. items():查找全部的键和值,返回元组类型。
      a = {'name':'张三', 'age':'28','sex':'man','class':"23"}
      print(a.items())
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值