zoukankan      html  css  js  c++  java
  • python中的列表

    列表操作


    一组有序数据的组合就是列表

    创建列表


    空列表

    方式1:
        变量 = []
    

    方式2:
    变量 = list()

    具有一个数据的列表

    变量 = [值]      备注:列表中保存的每个都称之为元素
    

    具有多个数据的列表

    变量 = [值,值,值....]
    

    普通操作


    访问列表中的元素

    变量[索引]
    

    修改列表中的元素

    变量[索引] = 新值
    

    添加列表元素

    普通操作无法实现,需要借助函数操作
    

    删除列表中的元素

    del 变量[索引]
    

    删除整个列表

    del 列表变量
    

    序列操作


    通用的序列操作包括以下几种: 序列相加序列相乘索引取片/分片成员检测最大值最小值长度计算

    列表相加操作

    格式:变量 = 列表1 + 列表2
    结果:新的列表
    注意:+两侧都要是列表类型
    

    列表相乘操作

    格式:变量 = 列表 * 整数
    结果:新的列表
    

    索引操作

    变量[索引]
    

    分片操作

    格式:变量 = 列表[:]
        获取整个列表
    

    格式:变量 = 列表[:结束索引]
    获取列表开头到结束索引之前的数据组成的列表

    格式:变量 = 列表[开始索引:]
    获取列表开始索引到列表末尾的数据组成的列表

    格式:变量 = 列表[开始索引:结束索引]
    获取开始索引和结束索引之间的数据组成的列表(包含开始索引,不包含结束索引)

    格式:变量 = 列表[开始索引:结束索引:间隔值]
    获取开始索引和结束索引之间的数据(按照间隔值来获取)组成的列表(包含开始索引,不包含结束索引)

    成员检测

    检测一个数据是否在列表中
        格式:值 in 列表
        结果:布尔值
    
    检测一个数据是否不在列表中
        格式:值 not in 列表
        结果:布尔值
    

    序列操作函数


    len()

    计算列表中元素的个数
    

    max()

    获取列表中的最大值
    

    min()

    获取列表中的最小值
    

    list()

    生成空列表或者将其他数据转化为列表类型
    

    列表的遍历操作


    for...in

    for 变量 in 列表:
        使用变量
    

    while

    i = 0
    while i<len(列表):
        使用列表中的元素(列表[i])
        i += 1
    

    遍历同等长度的二级列表

    列表 = [[值1,值2],[值1,值2],....]
    for 变量1,变量2 in 列表:
        使用变量1和变量2
    #注意:变量1取二级列表中的第一个值,变量2取第二个值
    

    遍历非同等长度的二级列表

    列表 = [[值1,值2],[值1,值2,值3],[值]...]
    for 变量1 in 列表:
        for 变量2 in 变量1:
            使用变量2(变量2是二级列表中的每个值)
    

    列表内涵/列表推导式 list content


    简单的列表推导式

    格式:[变量 for 变量 in 列表]
    结果:遍历列表中的每个值,将每个值获取之后组成新的列表,可以对获取的值进行修改
    [变量可以其他操作 for 变量 in 列表]
    

    带有判断条件的列表推导式

    格式:[变量 for 变量 in 列表  if 条件表达式]
    结果:遍历列表中的每个值,根据判断条件决定是否取出指定的值组成新的列表,可以对获取的值进行修改
    

    多个列表的同时循环的列表推导式

    格式:[变量1+变量2  for 变量1 in 列表1  for 变量2  in 列表2]
    结果:同时遍历列表1和列表2中的每个值,将列表1中的每个值和列表2中的每个值进行运算得到新的列表
         新的列表中元素个数=列表1中元素个数 * 列表2中的元素个数
    变量1和变量2可以进行其他操作,不一定非要+ 这只是demo
    

    带有判断条件的多个列表的同时循环列表推导式

    格式:[变量1+变量2 for 变量1 in 列表1 for 变量2 in 列表2 if 条件表达式]
    结果:同时遍历列表1和列表2中的每个值,根据判断条件将列表1中的值和列表2中的值进行运算,得到新的列表
    新的列表数量由判断条件决定
    

    列表专用函数


    append()

    功能:向列表的末尾添加新的元素
    格式:列表.append(值)
    返回值:None
    注意:新添加的值在列表的末尾,该函数直接操作原有列表
    

    clear()

    功能:清空列表中所有元素
    格式:列表.clear()
    返回值:None
    

    copy()

    功能:复制列表
    格式:列表.copy()
    返回值:新的列表
    

    count()

    功能:计算某个元素出现的次数
    格式:列表.count(值)
    返回值:整数
    

    extend()

    功能:将一个列列表继承另一个列表
    格式:列表.extend(序列)
    返回值:None
    注意:直接改变原有列表
    

    index()

    功能:获取某个值在列表中的索引
    格式:列表.index(值)
    返回值:整数
    注意:值不存在与列表时抛出异常错误!
    

    insert()

    功能:在指定位置之前插入元素
    格式:列表.insert(索引,值)
    返回值:None
    注意:直接改变原有列表
    

    pop()

    功能:在列表中移除一个元素
    格式:列表.pop([索引])
    返回值:无
    注意:没有指定索引,默认移除最后一个元素
    

    remove()

    功能:移除指定的值
    格式:列表.remove(值)
    返回值:无
    注意:如果有索引的清空下推荐使用POP移除,效率比remove高
    

    reverse()

    功能:列表反转操作
    格式:列表.reverse()
    返回值:None
    

    sort()

    功能:列表排序
    

    格式:列表.sort() 按照从小到大排序(数字)
    格式:列表.sort(reverse=True) 按照从大到小排序(数字)
    格式:列表.sort(key=函数) 对值进行指定的函数处理之后在从小到大排序
    格式:列表.sort(key=函数,reverse=True) 对值进行指定的函数处理之后在从大到小排序

    返回值:None
    注意:直接改变原有列表

  • 相关阅读:
    web.xml
    ibatis配置
    ibatis基本语法
    XML文件解析
    进制转换
    BaseAction
    【编译】StreamInsight简介
    秒懂C#通过Emit动态生成代码
    百度地图应用开发(二)
    ListView与Adapter的那些事儿
  • 原文地址:https://www.cnblogs.com/victorfengming/p/11931050.html
Copyright © 2011-2022 走看看