• Python集合字典运算符


    1.集合2.字典3.运算符优先级

    1.集合

    创建:{} set([])  注意:创建空的集合要用set()
      特点:元素唯一,无序
      运算: & 交集 | 并集 - 差集
      方法:
      s.add(x)     添加单个元素
      s.update()   添加多个元素
      s.remove()   移除元素
      s.clear()   清空集合

    2.字典

      创建: {key:value} (大括号创建字典的键时要加引号)
          dict(key=value) (括号里赋值方式,名字=对象,不要引号)
          字典里的键和值用‘:’隔开,一对键和值组成一个项,项和项之间用‘,’隔开
    特点:
      键唯一,重复会被重新复制
      无序
           
      添加和取值
          cidt[key]=value key存在则修改值,没有则添加
      属性方法
      .update({ }) 在字典中添加多个项
       
      .items()     返回字典的各个项
           
      .keys()       返回字典的键
           
      .values()     返回字典的值
       
      .get(k)       如果键k在,返回键k的值,不存在则返回None

      .get(k,x)     如果键k在,返回键k的值,不存在则返回x

      .pop(k)       返回并移除键k所对应的元素,不存在则抛出异常
       
      .pop(k,x)     返回并移除键k所对应的元素,不存在则返回x

      总结:
          key唯一,故可以是数字,字符串,元组


    总结:
      可变对象:list set dict
      不可变对象: str tuple

    3.运算符


    算术运算符:+ ,- , *, /, %, **,//
      赋值运算符:= ,+=,-=, *=,/=,%=, **=
      比较运算符:==,!=, >, <, >=,<=
      成员运算符:in , not in
      身份运算符:is , is not
          判断两个名字是否指向同一个对象,当id相同时返回True(==比较运算是判断的值)
      逻辑运算符:and,or,not
          and(与) 两个条件都满足时才返回True
          or(或) 有一个条件满足了就返回True
          not(非) 取反

      计算顺序:默认地,运算符优先级表决定了哪个运算符在别的运算符之前计算。然而,如果你想要改变它们的计算顺序,你得使用圆括号
      结合规律:运算符通常由左向右结合,即具有相同优先级的运算符按照从左向右的顺序计算
    '''
    **                           #幂运算
    +   - *   /   %             #算术运算符
    < > <= >=                 #比较运算符
    == !=                       #比较运算符
    = %= /= -= += *= **=   #赋值运算符
    is   is not                 #身份运算符
    in   not in                 #成员运算符
    not > and > or             #逻辑运算符
    '''

    info = {'name':'ABC','age':18,'height':170}
    print(info['name'])	#查找key
    print(info.keys())	#查找所有key
    print(info.values())	#查找所有value
    info = {'name':'ABC','age':18,'height':170}
    info['age'] = 17	#替换
    print(info)
    
    info = {'name':'ABC','age':18,'height':170}
    info.pop('height')		#删除
    print(info)
    
    info = {'name':'ABC','age':18,'height':170,'child':{'name':'doudou','age':2,'height':90}}
    print(info['child']['age'])	#取嵌套元素
    
    
    info = {'name':'ABC','age':18,'height':170}
    info.update({'child':{'name':'doudou','age':2,'height':90}})	#增加
    print(info)
     

    作业

    #python基础 第四次作业
    
    #1.有两个列表 x = [1,2,3,'a','b','c']  y = ['a','b','c']
    # 找出x,y列表中,共有元素
    
    x = [1,2,3,'a','b','c'] 
    y = ['a','b','c']
    
    print(set(x)&set(y))
    
    
    #2.新建一个字典,用3种方法往字典里面插入值;
    #用 4 种方法取出values,用2种方法取出key
    
    di = {}
    
    di = di.fromkeys(['a','b'],123)
    print(di)
    di.setdefault('c',456)
    print(di)
    di.update({'d':789,'e':111})
    print(di)
    
    print(di['a'])
    print(di.get('b'))
    print(di.pop('c'))
    print(di.values())
    
    print(di.keys())
    print(list(di.items())[0][0])
    
    #3. 定义这4个变量,为何有的会报错?分析结果,
    #解释出现这种结果的原因。
    
    #s1 = {1,['a','b','c']}  #报错原因,集合里的元素要可哈希,列表是不可哈希的
    #s2 = {1,('a','b','c')}  #元组是可以哈希的,hash(('a','b','c'))
    
    #di1 = { 'a':'test',('a','b'):'test'}
    #di2 = { 'a':'test',{'a','b'}:'test'}    #报错原因,字典的键要可哈希,集合是不可哈希的
    

      

  • 相关阅读:
    django 中 null=True 和 blank=True的区别!
    利用js代码屏蔽f12,右键,粘贴,复制,剪切,选中,操作!!秀!秀!秀!
    jupyter notebook快速入门教程
    锁相关
    事务相关
    索引
    体系结构
    数据类型
    字符集
    部署规范
  • 原文地址:https://www.cnblogs.com/xcjldtp/p/8489333.html
Copyright © 2020-2023  润新知