zoukankan      html  css  js  c++  java
  • doraemon的python 集合

    day06 数据类型 集合

    今日内容

    • 集合

    • 内存相关

    • 深浅拷贝

       

    内容回顾和补充

    1. 内容回顾

    2. 补充 l列表

      • reverse 反转

    v1 = [12,2,3,4,2,4]
    v1.reverse()
    print(v1)

    sort 排序

    v1 = [12,2,3,4,2,4]
    v1.sort(reverse=False) #从小到大(默认)
    v1.sort(reverse=True)  #从大到小
    print(v1)

     

    3.字典

    • keys/values/items

    • get

      info = {'k1':'v1','k2':'v2'}
      v2 = info.get("k1111",666)   #如果没有相应的键,返回666
      v2 = info.get("k1111")  #None就是python中的空
    • updata

      info = {'k1':'v1','k2':'v2'}
      info.update({'k3':'v3','k2':'666'})
      #不存在就添加,存在就更新

       

    • 判断一个字符中是否有敏感字符

      • str

    v = "wqnmlgb"
    if "nm" in v:
       print('有敏感字符')

     

    list?tuple

    v = ['as','fdsa','dafsdf','safa']

    if 'as' in v:
       print('含有敏感字符')

     

    dict

    v = {'k1':'v1','k2':'v2','k3':'v3 '}
    #默认按照键判断,即:判断X是否是字典的键
    if 'x' in v:
       pass

    #青砍断:k1是否在其中
    if 'k1' in v:
       pass
    #请判断v2是否在其中
    #方式一
    flag ='不存在'
    for v in v.values():
       if v == 'v2':
           flag ='存在'
    print('存在')
    #方式二:
    if 'v2' in list(v.values())#强制转化成列表
    pass
    #请判断:k2:v2是否在其中
    values = v.get('k2')
    if values == 'v2':
       print('存在')
    else
    print('不存在')
    • 练习题

    #让用户输入任意字符,然后是否包含判断此字符是否包含有指定的敏感字符

     

     

    内容详细

    1. 集合(set)

    v = {1,2,3,4,5,6,7,99,100}
    
    #疑问:v = {}  是空字典还是空集合     答案:空字典
    v = set()  #空集合
    
    • 独有功能

      • add

      • discard

      • update

      • intersection

      • union

      • difference

    • 公共功能

      • len

      • 索引[无]

      • 步长[无]

      • 切片[无]

      • for循环

      • 删除[无]

      • 修改[无]

    2.内存相关

    • 例子一

    • v1 = [11,22,33]
      v2 = [11,22,33]
      
    • 例子二

    • v1 = [11,22,33,44]
      v1 = [11,22,33]
      
    • 例子三

    • v1 = [11,22,33]
      v2 = v1
      
      #练习1(内部修改)
      v1 = [11,22,33]
      v2 = v1
      v1.append(666)
      print(v2)  #含有666
      
      #练习2(赋值)
      v1 = [11,22,33]
      v2 = v1
      v1 = [1,2,3,4]
      print(v2)
      
      #练习3(重新赋值)
      v1 = 'alex'
      v2 = v1
      v1 = 'oldboy'
      print(v2)
          
      
    • 例子四

    • v = [1,2,3]
      values = [11,22,v]
      
      #练习1
      v.append(9)
      print(values) #[11,22,[1,2,3,9]]
      
      #练习2
      values[2].append(999)
      print(v) #[1,2,3,999]
      
      #练习3
      v = [1,2,3]
      values = [11,22,v]
      v = 999
      print(values) #没改变
      
    •  

    • 问题:==与is的区别

      ==比较的是值

      is比较的是内存地址

    走你今儿

    • 列表

      • reverse

      • sort

         

    • 字典

      • get

      • update

    • 集合

      • add

      • discard

      • update

      • intersection

      • union

      • difference

    • 特殊

      • 嵌套:集合/字典的key

      • 空:None

      • 空集合

         

    • id

    • type

    • 嵌套的应用

      • 赋值

      • 修改内部元素:列表/字典/集合

  • 相关阅读:
    c#爬虫-从内存中释放Selenium chromedriver.exe终极杀
    领域驱动设计-从贫血模型到充血模型
    推荐:.Net 5开源免费的内容管理系统
    Exceptionless服务端本地化部署
    Chrome扩展程序开发
    SqlSugar+SqlServer+NetCore3.1 入门案例
    Linux Qt5 一. 开发环境安装
    Boost Mutex详细解说
    Y7000 2020 安装ubuntu 16.04.3双系统后无法识别无线网卡问题
    《视觉SLAM十四讲》第三讲习题7
  • 原文地址:https://www.cnblogs.com/doraemon548542/p/11138355.html
Copyright © 2011-2022 走看看