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)

  • 相关阅读:
    滑块破解
    数据结构与算法
    图形验证码 tesserocr pillow
    drf版本控制 和django缓存,跨域问题,
    Django-DRF-图书增删改查 !!!
    Django 序列化-token
    Python- redis缓存 可达到瞬间并发量10W+
    GIT 版本管理-github&码云
    Python 三种过滤去重方法
    LINUX-MYSQL
  • 原文地址:https://www.cnblogs.com/wzc27229/p/10949605.html
Copyright © 2011-2022 走看看