• 列表常用方法及元祖、字典、集合的内置方法


    一 、列表(可变类型)常用方法

    l = [1,2,3,4,5,6,7]

    1.计数:.count()

       print(l.count(7))>>>7

    2.删除:.clear()

       print(l)>>>[1, 2, 3, 4, 5, 6, 7]

       res = l.clear()

       print(res)>>>None

    3.列表反转:.reverse()

       res = l.reverse()

       print(l)

    4.排序:.sort() 默认情况下是从小到大(升序)

       l1 = [21,656,48,75,30]

       l1.sort()

       print(l1)>>>[21, 30, 48, 75, 656]

       l1.sort(reverse = True)  通过指定参数来修改默认值的排序规则(降序)

       print(l1)

    总结:能存多个值、有序的(可索引)、可变

    二、队列    先进先出:采用.append() .pop()方法

    l1 = []

    先进:

    l1.append('first')

    l1.append('second')

    l1.append('third')

    print(l1)>>>['first', 'second', 'third']

    先出:

    print(l1.pop(0))>>>first

    print(l1.pop(0))>>>second

    print(l1.pop(0))>>>third

    三、堆栈   先进后出:采用.append() .pop()方法

    l1 = []

    先进:

    l1.append('first')

    l1.append('second')

    l1.append('third')

    后出:

    print(l1.pop())>>>third

    print(l1.pop())>>>second

    print(l1.pop())>>>first

    四、元组(tuple)

    作用:能够存储多个元素,元素与元素之间逗号隔开,元素可以是任意类型,元素不能被修改。

    定义:age = (1,2,3,4,5,6)等价于 age = tuple((1,2,3,4,5,6))

    t = (1,2,3,'c','d',[1,3,5])

    print(type(t))>>><class 'tuple'>

    t1 = tuple(1) #报错:必须传容器类型

    1.按索引取值(正取向+反取向)

    print(t[5])>>>[1, 3, 5]

    t[1] = 'abcd'

    print(t)>>>报错 不可改变元组内元素

    t[-1][0] = 'abcd'

    print(t)>>>(1, 2, 3, 'c', 'd', ['abcd', 3, 5])

    del t[0]

    print(t)>>>报错 元组内的元素不可改变

    2.切片(顾头不顾尾,步长)

    print(t[ : :2])>>>(1, 3, 'd')

    3.长度

    print(len(t))>>>6

    4.成员运算in和not in

    print('a' in t)>>>True

    5.循环

    for i in t:

       print(i)

    print(t.count('a'))>>>0

    print(t.index('xxx'))>>>报错 不存在即报错

    总结:1.能存多个值 2.有序 3.不可变

    五、字典及内置方法

    作用:能存存储多组 key:value键值对  key是对value的描述  key通常情况下都是字符串

    定义:d = {'name':'jason','password':123}

    1.按key存取值:可存可取

    d1 = {'name':'zzj','password':'123'}

    print(d1['name'])>>>zzj

    d1['name'] = 'angela'

    print(d1)>>>{'name': 'angela', 'password': '123'}

    d1['age'] = '18'

    print(d1)>>>{'name': 'angela', 'password': '123', 'age': '18'}  #赋值语句当key不存在的情况下,会自动新增一个键值对

    2.统计长度len

    d1 = {'name':'zzj','password':'123'}

    print(len(d1))>>>2

    3.成员运算in 和not in  对于字典来说只能判断key值

    d1 = {'name':'jason','password':'123'}

    print('123' in d1)>>>Flase

    print('name' in d1)>>>True

    4.删除

    d1 = {'name':'zzj','password':'123'}

    del d1['name']

    print(d1)>>>{'password': '123'}

    d1.clear()

    print(d1)>>>{}

    5.键keys(),值value(),键值对items()

    d1 = {'name':'zzj','password':'123' }

    print(d1.keys())>>>dict_keys(['name', 'password'])

    print(d1.values())>>>dict_values(['zzj', '123'])

    print(d1.items())>>>dict_items([('name', 'zzj'), ('password', '123')])

    6.get()根据key获取value

    d1 = {'name':'zzj','password':'123' }

    print(d1.get('name')>>>zzj

    print(d1.get('age','age不在字典的key中'))>>>age不在字典的key中

    7.dict.fromkeys()

    l1 = ['name','pwd','hobby']

    print(dict.fromkeys(l1,123456))>>>{'name': 123456, 'pwd': 123456, 'hobby': 123456}

    8.dict.popitem()

    print(d1.popitem())>>>('password', '123')  #尾部以元组的形式弹出键值对

    9.dict.setdefault()

    d1 = {'name' : 'zzj','pwd' : '123'}

    res = d1.setdefault('name','angela') #当键存在的情况下,不修改值,并且将原先的key对应的值返还给用户

    print(res)

    res1 = d1.default('age',18)#当键值不存在的情况下,新增一个键值对。并将新增的键值对的值返还给用户

    print(res1)

    10.dict.update()

    d1 = {'name':'zzj','age':18}

    d2 = {'hobby':'read'}

    d1.update(d2)

    print(d1)>>>{'name': 'zzj', 'age': 18, 'hobby': 'read'}

    11.循环

    d1 = {'name':'zzj','age':'18'}

    for i in d1:

         print(i)>>>>name age

    六、集合

    pythons = ['jason', 'nick', 'tank', 'egon', 'kevin', 'owen', 'alex']

    linux = ['frank', 'jerry', 'tank', 'egon', 'alex'] 

    for name in pythons:

       if name in linux:

            print(name)

     

    用一个取两个列表中的交集,引出接下来要说的集合:

    作用:去重、关系运算

    定义:s = {1,2,3,4,5,6}

              print(type(s))>>><class 'set'>

    可以包含多个元素,用逗号分割。

     

    1.集合的元素遵循三个原则:

    1,每个元素必须是不可变类型

    可变:不可hash

    不可变:可hash

    s = {1,2,3,4,5,6,'a','v',(1,2),[1,2]} #报错

    2,没有重复的元素

    s = {1,1,1,1,2,2,2,3,3,3,4,5,5,5,6,6}

    print(s)>>>{1, 2, 3, 4, 5, 6}

    3,无序

    2.长度len

    s = {1,2,3,4}

    print(len(s))>>>4

    3.成员运算in 和 not in

    print(1 in s)>>>True

    print(5 in s)>>>Flase

    4.集合间的关系

    pythons = {'jason', 'nick', 'tank', 'egon', 'kevin', 'owen', 'alex'}

    linux = {'frank', 'jerry', 'tank', 'egon', 'alex'}

    pythons和linux都报名的学生:

    print(pythons&linux)>>>{'tank', 'egon', 'alex'}

    报名了pythons,但是没有报名linux的学生:

    print(pythons-linux)>>>{'kevin', 'jason', 'nick', 'owen'}

    报名了linux,但没有报名pythons的学生:

    print(linux-pythons)>>>{'frank', 'jerry'}

    没有报名一样课程的学生:

    print(pythons^linux)>>>{'jason', 'frank', 'nick', 'owen', 'kevin', 'jerry'}

    所有报了名的学生:

    print(pythons|linux)>>>{'jason', 'tank', 'nick', 'owen', 'alex', 'frank', 'kevin', 'jerry', 'egon'}

    5.删除

       s = {1,2,3,4,5}

       s.add(666)

       print(s)>>>{1, 2, 3, 4, 5, 666}

       s.add((1,2,3,4))

       print(s)>>>1, 2, 3, 4, 5, (1, 2, 3, 4), 666}

       s.remove(6)

       print(s)>>># 若不存在这个数,则直接报错

       print(s.discard(888888888))

       print(s)>>>#若不存在这个数,则返回一个None

     

     

     

     

     

     

     

     

  • 相关阅读:
    Dynamic Method Binding in Delphi 动态方法绑定
    Server Memory Server Configuration Options 服务器内存服务配置选项
    最大化系统并发连接数.Windows.reg
    js一行代码解决各种IE兼容问题
    [原创]如果软件在网络磁盘中或移动磁盘中运行时需要解决 exception C0000006 异常问题
    用 ghostscript 转化PDF文件为图片 的参数设置
    GhostScript应用一例:使用GhostScript强行修改加密PDF
    Win7 Win8 Win10取不到机器码的处理办法
    WCAG
    页面被iframe与无刷新更换url方法
  • 原文地址:https://www.cnblogs.com/spencerzhu/p/11134282.html
Copyright © 2020-2023  润新知