元组、字典、集合

基本使用:tuple
  用途:记录多个值,当多个值没有改的需求,此时用元组更合适
  定义方式:在()内用逗号分隔开多个任意类型的值
tuple使用:
  t1=tuple('hello')
  结果是('h','e','l','l','o')
常用操作+内置的方法
 
 1.按索引取值(正向取+反向取):只能取
    t[0]
  2.切片
    t[0:3]
  3.长度
  4.成员运算in 和 not in
  5.循环
   
 for item in ('a','b','c'):
      print(item)
  6.count index
  该类型总结:可以存多个值,有序,不可变

字典类型
  
基本使用dict
  用途:记录多个值,每一个值都对应的key用来描述value的作用
  定义方式:在{}内用逗号分隔开多 个key:value,其中value可以是任意类型,而key必须是不可变的类型,通常情况下应该str类型
  dict用法
    1. dic=dict(x=1,y=1,z=1)
    2.
      userinfo=[
     ['name','egon'],
     ['age',18],
     ['sex','male']
      ]
      d={}
      for k,v in userinfo: #k,v=['name', 'egon']
      d[k]=v
      print(d)

      d=dict(userinfo)
      print(d)

  
常用操作+内置的方法
    1.按key存取值,可存可取
      dic={'name':'egon'}
      print(dic['name'])
      dic['name']='EGON'
      print(dic)
      dic['age']=18 #如果字典里面没有则添加一条 'age':18
      print(dic)
    2.长度
    3.成员运算 in 和 not in
    4.删除
      通用:del dic['name'] 如果key不存在则报错
      pop res=dic.pop('name') 删除key对应的value,并返回value ,key 不存在则报错
      
res=dic.popitem() 删除尾端的一个key:value
    5.键keys(),值values(),键值items()
    6.循环
    7.dic.get()
      
dic.get('name') 获取字典中key对应的value
    8.fromkeys
      l=['name','age','sex',]
      dic=['name':None,'age':None,'sex':None]
      dic=dic.fromkeys(l,None)
      创建一个新的字典dic将l中的值作为key赋予初始值None 原l列表不会改变
    9。update
      
old_dic={'name':'egon','age':18,'sex':'male'}
      new_dic={'name':'EGON','x':1,'y':2}

      old_dic.update(new_dic)
      将new字典中的值更新到old中key一样的赋予new的old没有的在后面添加
    10.setdefault:有则不懂/返回原值,无则添加/返回新值
  
    dic={'name':'egon','age':18}
      res=dic.setdefault('name','EGON') # 字典中已经存在key则不修改,返回已经存在的key对应的valus
集合
  用途: 关系运算,去重
  定义方式: 在{}内用逗号分开个的多个值
  集合的三大特性:
    1 每一个值都必须是不可变类型
    2 元素不能重复
    3 集合内元素无序
  基本使用:set
    s=set(‘hello’)
    s={1,3,5,6,'as','dsa'}
  
常用操作+内置的方法
    & (intersection)取两个集合的交集
    | (union)取两个集合的并集
    - (difference)取两个集合的差集
    ^ (symmetric_diffenrence)取两个集合的对称差集
    == 是否相等,顺序可以不一致
    >= (issuperset) 父集:一个集合包含另一个集合
    <= (issubset)子集
  update:
    s1={1,2,3}
    s1.update({3,4,5})
    将3,4,5添加到s1中 去除重复
  删除:
  pop,remove,discard
  res=s1.remove(3)
单纯的删除,返回值为None删除的元素不存在就报错
  si.discard() 单纯的删除,返回None 删除的元素不存在不会报错
  add
  添加一个值 s1.add(2)
  difference_update
  获取两个集合的差集
  isdisjoint
  s1.isdisjoint(s2) 如果两个集合没有交集则返回True
posted @ 2018-07-25 16:38  大张哥  阅读(209)  评论(0编辑  收藏  举报