zoukankan      html  css  js  c++  java
  • 字典集合方法

    字典的基本使用方法

    • get方法

      v1 = {'name':1,'age':2} 
      v2 = v1.get('name') # 键不存在会默认返回None,不会报错  推荐使用
      v3 = v1['name'] # 键不存在会报错
      
    • 新增键值对:

      键存在的情况下,则修改,不存在则更新,也就是说,字典的键不可能一样
      
    • update ,pop

      v1 = {'name':1,'age':2} 
      v1.update(name = 3) # 键存在的情况下,则修改,不存在则增加
      v1.pop('age')   # 删除键值对,并返回值
      
    • setdefault

      v1 = {'name':1,'age':2} 
      v1.setdefalut('name',3)  #键存在的情况下,则修改,不存在则增加
      
    • fromkeys 快速构造字典

      res = {}.fromkeys(['k1','k2','k3'],[])
      print(res)  # {'k1': [], 'k2': [], 'k3': []}
      res.get('k1').append(123)
      print(res)
      

    集合

    子元素不重复,子元素可希哈,无序

    去重,共和关注(交叉并集)用集合就是以上两个功能。

    • add

      date = {1,2,3}
      date.add()
      
    • discard

      date = {1,2,3}
      date.discard()
      
    • & intersection交集 | union并集 - difference 差集 ^ symmetric_difference 对称差集 ————》返回两个集合组成的新集合,但会移除两个集合的重复元素 一般都用符号简写

      v1 = {1,2,3,4}
      v2 ={2,3,4,5,6}
      v = v1-v2  # v1中有的值且v2中没有的值
      
    • 判断是否是父集和子集 s1 > s2 判断s1 是否是s2的父集

  • 相关阅读:
    F. Maximum White Subtree 树形dp*换根
    D
    E
    两圆相交板子
    lucass定理
    高精度求组合数
    康托展开与康托逆展开
    FFT变换
    Codeforces Round #625 Div. 1 Problem C
    E.Multiply Pollard_rho质因数分解
  • 原文地址:https://www.cnblogs.com/feiguoguobokeyuan/p/13307306.html
Copyright © 2011-2022 走看看