zoukankan      html  css  js  c++  java
  • 列表-list

    1. list 操作

       列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型

       一些常用的API如下:

    list.append(x)                       # 在列表末尾添加新的元素,无返回值
    list.count(x)                        # 统计某个元素在列表中出现的次数
    list.extend(seq)                     # 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表),无返回值
    list.index(x)                        # 从列表中找出某个值第一个匹配项的索引位置
    list.insert(index, x)                # 将对象插入列表指定位置
    list.pop([index=-1])                 # 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
    list.remove(x)                       # 移除列表中某个值的第一个匹配项
    list.reverse()                       # 反向列表中元素
    list.sort(key=None, reverse=False)   # 对原列表进行排序,默认升序
    list.clear()                         # 清空列表
    list.copy()                          # 复制列表
    len(list)                            # 列表元素个数

       1)采用“+”,这种方式会把两个list中的元素合并为一个list,+ 的效果就等同于extend

    l1 = [1, 2, 3]
    l2 = [4, 5, 6]
    l3 = l1 + l2
    print(l3)  # 元素合并,[1, 2, 3, 4, 5, 6]
    
    l4 = l1.extend(l2)
    print(l4)  # None 因为extend无返回值
    print(l1)  # 元素合并,[1, 2, 3, 4, 5, 6]
    
    l4 = l1.append(l2)
    print(l4)  # None 因为append无返回值
    print(l1)  # 增加一个新元素,[1, 2, 3, 4, 5, 6, [4, 5, 6]]
    

       2)采用“*”,可以将list中的元素整体重复扩充

    l1 = [1, 2, 3]
    print(l1 * 3)   # [1, 2, 3, 1, 2, 3, 1, 2, 3]
    

      

    2. 列表生成式

    一种简洁的列表创建的方法,首先介绍下它的语法规则,exp 或者 condition 都是根据参数名来传递元素的:

    [exp for x in iterable]                          # 每个 iterable 中的数据都做 exp 处理,处理结果生成列表
    [exp for x in iterable_A for y in iterable_B]    # 每迭代 iterable_A 中的一个元素,就把 ierable_B 中的所有元素都迭代一遍
    [exp for x in iterable if condition]             # 当 iterable 中的数据满足 if 条件时,做 exp 处理,处理结果生成列表
    [exp1 if condition else exp2 for x in iterable]  # 当 iterable 中的数据满足 if 条件时,做 exp1 处理,否则做 exp2 处理,处理结果生成列表
    

    接下来举几个例子:

    a = [x * x for x in range(1, 11)]                    # [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
    b = [x * x for x in range(1, 11) if x % 2 == 0]      # [4, 16, 36, 64, 100]
    c = [m + n for m in 'ABC' for n in 'XYZ']            # ['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']
    d = [x if x % 2 == 0 else -x for x in range(1, 11)]  # [-1, 2, -3, 4, -5, 6, -7, 8, -9, 10]
    
    e = {'x': 'A', 'y': 'B', 'z': 'C' }
    f = [k + '=' + v for k, v in e.items()]              # ['y=B', 'x=A', 'z=C']      
    

      

  • 相关阅读:
    Hadoop使用实例
    hdfs操作命令
    Hadoop安装与HDFS体系结构
    Linux和MySQL的安装与基本操作
    Hadoop演进与Hadoop生态
    作业一
    Shader笔记——9.简单灰色效果+遮罩
    iOS——xcodeproj脚本
    iOS——KSAdSDK
    UnityPlugins——4.SignInWithApple
  • 原文地址:https://www.cnblogs.com/yanghh/p/13192246.html
Copyright © 2011-2022 走看看