zoukankan      html  css  js  c++  java
  • day07_集合

    小数据池:

    int :-5-256

    str : 特殊字符, *数字20

    ascii: 八位 一个字节

    unicoid: 32位 4个字节

    utf-8:中文:24位 3个字节   英文:8位 一个字节

    gbk:中文:16位 2个字节   英文:8位 一个字节

    文件传输由unicoid--bytes--utf-8

    基础数据类型补充:

    str:

    int

    bool

    dict

    tuple

    set:可变数据类型(里面放不可变数据类型),无序,不重复,{ }

      增:set.add()

        set.update("adb")  #迭代增加-------单独增加a,b,c

      删:set.pop()         随机删除

        set.remove("adb")   按元素删除  

              set.clear()   清空

        del set     删除

      查:只能for循环,无序

    -------------------------------------------------------

    集合的其他操作

    1.交集----&

    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    print(set1 & set2)  # {4, 5}
    print(set1.intersection(set2))  # {4, 5}

    2.并集-----|或union

    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    print(set1 | set2)  # {1, 2, 3, 4, 5, 6, 7,8}
    
    print(set2.union(set1))  # {1, 2, 3, 4, 5, 6, 7,8}

    3.差集----(- 或者 difference)

    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    print(set1 - set2)  # {1, 2, 3}
    print(set1.difference(set2))  # {1, 2, 3}

    4.反交集----(^ 或者 symmetric_difference)

    set1 = {1,2,3,4,5}
    set2 = {4,5,6,7,8}
    print(set1 ^ set2)  # {1, 2, 3, 6, 7, 8}
    print(set1.symmetric_difference(set2))  # {1, 2, 3, 6, 7, 8}

    5.子集与超集

    set1 = {1,2,3}
    set2 = {1,2,3,4,5,6}
    
    print(set1 < set2) -----True
    print(set1.issubset(set2))---True  # 这两个相同,都是说明set1是set2子集。

    6.frozenset 不可变集合,让集合变成不可变类型

    s = frozenset('barry')
    print(s,type(s))  # frozenset({'a', 'y', 'b', 'r'}) <class 'frozenset'>

    ----------------------------------------------------------------------------------------------------------------------------

    enumerate:枚举,对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。 

    li = ['alex','银角','女神','egon','太白']
    for i in enumerate(li):
        print(i)
    ----------------------------------------

    (0, 'alex')
    (1, '银角')
    (2, '女神')
    (3, 'egon')
    (4, '太白')

    ------------------------------------------

    for index,name in enumerate(li,1):
        print(index,name)
    -----------------------------------------

    1 alex
    2 银角
    3 女神
    4 egon
    5 太白

    --------------------------------------------

    for index, name in enumerate(li, 100):  # 起始位置默认是0,可更改
        print(index, name) 
    ------------------------------------------

    100 alex
    101 银角
    102 女神
    103 egon
    104 太白

     

    #删除列表的奇数索引数值          在循环列表,字典是不要删除内容,易出错
    lis = [1,2,3,4,5,"t","t",4]
    val =[]
    for i in range(len(lis)):
    if i % 2 != 0:
    j =len(lis)-i-1
    print(j)
    val.append(j)
    print(val)
    for k in val:
    lis.pop(k)
    print(lis)

  • 相关阅读:
    .net日期类与UNIX时间戳的相互转换,长数字
    钉钉的生日模块在哪
    js判断手机是苹果(IOS)还是安卓(android) H5手机端自适应宽高
    .net网站部署winserver2008R2 IIS只列出目录 浏览只显示目录浏览
    ajax有时请求不到数据 后台,有时收不到返回值的解决办法
    overflow不超出时不显示滚动条 属性解决内容未超出依然显示滚动条轨道的问题
    PB取datawindow生成的语句。要在datawindow的sqlpreview事件
    电脑C盘缓存路径在哪,清理C盘哪个文件夹可以删
    PB里执行写SQL语句
    SQL SERVER合并行。将多行数据合并成一行,字符串拼接
  • 原文地址:https://www.cnblogs.com/wzc27229/p/10949605.html
Copyright © 2011-2022 走看看