List的功能介绍

1. 列表的两种方法

1. 列表的内置方法

  1. 列表的相加

    格式:x.__add__(y)等同于x+y
    例如:list1 = [1,2,3]
    print(list1.__add__([4,5,6]))
    >>> [1,2,3,4,5,6]
    返回值:list

    注:上述的y可以是list/tuple/str/dict/set等,但不可以是int。

  2. 是否是包含关系

    格式:x.__contains__(y)等同于y in x
    例如:list1 = [1,2,3]
    print(list1.__contains__([2,3]))
    >>> True
    返回值:bool

    注:上述的y可以是list/tuple/str/dict/set等,但不可以是int。

  3. 指定列表索引删除(修改原列表)

    格式:x.__delitem__(index)等同于delete x[index]
    例如:list1 = [1,2,3]
    list1.__delitem__(2)
    print(list1)
    >>> [1,2]
    返回值:None
  4. 判断两个列表是否相等

    格式:x.__eq__(y)等同于x==y
    例如:list1 = [1,2,3]
    print(list1.__eq__([2,3]))
    >>> False
    返回值:bool
  5. 判断列表1是否大于等于列表2

    格式:x.__ge__(y)等同于x>=y
    例如:list1 = [1,2,3]
    print(list1.__ge__([1,2]))
    >>> True
    返回值:bool

    注:该方法主要判断依据是列表的第一个元素

  6. 访问属性的方法

    格式:x.__getattribute__(self,name)
    返回值:tuple
  7. 取出指定列表索引的元素

    格式:x.__getitem__(index)等同于x[index]
    例如:list1 = [1,2,3]
    print(list1.__getitem(2))
    >>> 3
    返回值:object
  8. 判断列表1是否大于列表2

    格式:x.__gt__(y)等同于x>y
    例如:list1 = [1,2,3]
    print(list1.__gt__([2]))
    >>> False
    返回值:bool

    注:该方法主要判断依据是列表的第一个元素

  9. 赋值相加

    格式:x.__iadd__(y)等同于x += y
    例如:list1 = [1,2,3]
    print(list1__iadd__('3'))
    >>> [1, 2, 3, '3']
    返回值:list

    注:上述的y可以是list/tuple/str/dict/set等,但不可以是int,而且原列表也会改变。

  10. 赋值相乘

    格式:x.__imul__(num)等同于x *= num
    例如:list1 = [1,2,3]
    print(list1.__imul__(2))
    >>> [1,2,3,1,2,3]
    返回值:list

    注:num只能是int类型,而且原列表也会改变。

  11. 构造方法(修改原列表)

    格式:x.__init__(y)
    例如:list1 = [1,2,3]
    list1.__init__([4,5])
    print(list1)
    >>> [4,5]
    返回值:list

    注:y不指定表示构造一个空列表

  12. 迭代器

    格式:x.__iter__()等同于iter(x)
    例如:list1 = [1,2,3]
    die = list1.__iter__()
    print(die.__next__())
    >>> 1
    返回值:迭代器
  13. 判断列表1是否小于等于列表2

    格式:x.__le__(y)等同于x<=y
    例如:list1 = [1,2,3]
    print(list1.__le__([2]))
    >>> True
    返回值:bool

    注:该方法主要判断依据是列表的第一个元素

  14. 列表长度

    格式:x.__len__()等同于len(x)
    例如:list1 = [1,2,3]
    print(list1.__len__())
    >>> 3
    返回值:int
  15. 判断列表1是否小于列表2

    格式:x.__lt__(y)等同于x<y
    例如:list1 = [1,2,3]
    print(list1.__lt__([2]))
    >>> True
    返回值:bool

    注:该方法主要判断依据是列表的第一个元素

  16. 列表的相乘

    格式:x.__mul__(num)等同于x*y
    例如:list1 = [1,2,3]
    print(list.__mul__(2))
    >>> [1,2,3,1,2,3]
    返回值:list
  17. 判断两个列表是否不相等

    格式:x.__ne__(y)等同于x!=y
    例如:list1 = [1,2,3]
    print(list1.__ne__([4,5]))
    >>> True
    返回值:bool
  18. 重新定义列表

    格式:x.__new__(list)
    例如:list1 = [1,2,3]
    print(list1.__new__(list))
    >>> []
    返回值:list
  19. 内置转换

    格式:x.__repr__(self)
    返回值:list
  20. 反转后迭代

    格式:x.__reversed__()等同于reversed(x)
    例如:list1 = [1,'2',3,'d','$']
    die = list1.__reversed__()
    print(die.__next__())
    >>> '$'
    返回值:迭代器
  21. 右→左 列表相乘

    格式:x.__rmul__(num)等同于num*x
    例如:list1 = [1,2,3]
    print(list1.__rmul__(2))
    >>> [1,2,3,1,2,3]
    返回值:list
  22. 修改指定索引的元素(修改原列表)

    格式:x.__getitem__(index,value)等同于x[index]=value
    例如:list1 = [1,2,3]
    list1.__getitem__(1,5)
    print(list1)
    >>> [1,5,3]
    返回值:None
  23. 列表在内存中大小,转换为字节进行计算

    格式:x.__sizeof__()
    例如:list1 = [1,2,3]
    list2 = [2,3]
    print(list1.__sizeof__())
    >>> 64
    print(list2.__sizeof__())
    >>> 56
    返回值:int
    #列表长度的不同,导致类别在内存中的大小也不一样。

2. 常用方法

  1. 原列表添加一个元素

    格式:x.append(y)
    #直接修改原列表,添加的元素可以任意对象,每次只能添加一个元素
    例如:list1 = [1,2,3,4]
    list1.append([1,2,3])
    print(list1)
    >>> [1,2,3,4,[1,2,3]]
    返回值:None
  2. 清空原列表

    格式:x.clear()
    #删除列表中所有元素,列表本身不删除
    例如:list1 = [1,2,3,4]
    list1.clear()
    print(list1)
    >>> []
    返回值:None
  3. 复制列表

    格式:x.copy()
    #复制原列表,生成一个新列表
    例如:list1 = [1,2,3,4]
    print(list1.copy())
    >>> [1,2,3,4]
    返回值:list
  4. 计数

    格式:x.count(value)
    #统计列表中指定元素的个数
    例如:list1 = [1,2,2,3,4,2,3]
    print(list1.count(2))
    >>> 3
    返回值:int
  5. 扩充列表

    格式:x.extend()
    #在原列表中扩充列表(修改原列表),两个列表合并为一个列表
    例如:list1 = [1,2,3,4]
    list1.extend(['1','2'])
    print(list1)
    >>> [1, 2, 3, 4, '1', '2']
    返回值:None
  6. 取出指定元素值的索引

    格式:x.index(value,strat,end)
    #在指定的索引范围内,查找元素的索引,默认全列表查找
    例如:list1 = [1, 2, 3, 4, '1', '2']
    print(list1.index('1',2,5))
    >>> 4
    返回值:int
  7. 插入元素

    格式:x.insert(index,object)
    #在原列表中,指定索引位置处添加一个元素,元素可以是任意对象
    例如:list1 = [1, 2, 3, 4, '1', '2']
    list1.insert(3,'four')
    print(list1)
    >>> [1, 2, 3, 'four', 4, '1', '2']
    返回值:None
  8. 取出指定索引的值

    格式:x.pop(index)
    #删除指定索引的值,默认从列表的最后面开始删除
    例如:list1 = [1, 2, 3, 'four', 4, '1', '2']
    print(list1.pop())
    >>> '2'
    print(list1.pop(2))
    >>> 3
    print(list1)
    >>> [1, 2, 'four', 4, '1']
    返回值:object
  9. 移除指定的元素

    格式:x.remove(value)
    #删除指定元素,直接修改原列表
    例如:list1 = [1, 2, 3, 'four', 4, '1', '2']
    list1.remove(3)
    print(list1)
    >>> [1, 2, 'four', 4, '1', '2']
    返回值:None
  10. 反转

    格式:x.reverse()
    #对列表进行升序排序后再进行颠倒
    例如:list1 = [1, 2, 3, 'four', 4, '1', '2']
    list1.reverse()
    print(list1)
    >>> ['2', '1', 4, 'four', 3, 2, 1]
    返回值:None
  11. 升序排序

    格式:x.sort()
    #对列表进行升序排序,一般int和str类型不能同时存在
    例如:list1 = [6,2,3,4]
    list1.sort()
    print(list1)
    >>> [2,3,4,6]
    返回值:None

2. 列表的操作

1. 列表的基础操作

  1. 列表的相加

    符号: +
    格式: list1 + list2
    返回值:list
  2. 列表的相乘

    符号: *
    格式: list * num
    返回值:list
  3. 索引操作

    符号: [index]
    格式: list[index]
    返回值:object
  4. 切片操作

    符号:[::]
    格式:list[index1:index2:num]
    返回值:list
  5. 成员检测

    符号: in
    格式: object in list
    返回值:bool

2. 列表序列操作函数

  1. 长度

    格式:len(list)
    返回值:int
  2. 最大值

    格式:max(list)
    返回值:int

    注:该函数只能用于纯数字的列表。

  3. 最小值

    格式:min(list)
    返回值:int

    注:该函数只能用于纯数字的列表。

  4. 转换为列表

    格式:list(序列)
    返回值:list

    注:主要用于将其他对象转换为列表,或生成一个空列表

3. 列表的遍历函数

  1. 使用for...in遍历

    格式:for variable in list:
    使用variable
    例如:list1 = [1,2,3]
    for i in list1:
    print(i)
    >>> 1
    >>> 2
    >>> 3
  2. while循环遍历

    格式:variable = 0
    while variable < len(list):
    使用列表中的元素(list[variable])
    variable += 1
    例如:list1 = [1,2,3]
    i = 0
    while i < len(list1):
    print(list1[i])
    i += 1
    >>> 1
    >>> 2
    >>> 3
  3. 二级列表的遍历

    1. 格式:for variable1 in list:
    for variable2 in variable1:
    使用variable
    例如:list1 = [['a','b','c'],['d','e','f'],['g','h','i']]
    for i in list1:
    for j in i:
    print(j)
    #输出的j就是大列表中列表的元素
    2. 格式:for variable1,variable2,... in list:
    直接使用variable1,variable2,...
    例如:list1 = [['a','b','c'],['d','e','f'],['g','h','i']]
    for n1,n2,n3 in list1:
    print(n1)
    >>> 'a'
    >>> 'd'
    >>> 'g'

    注:方法2只能遍历同等长度的二级列表。

  4. 列表推导式

    1. 简单的列表推导式

      格式:[variable for variable in list]
      例如:list1 = [1,3,4,5]
      print([i for i in list1])
      >>> [1,3,4,5]
      返回值:list
      #只是把原来的列表遍历了一遍,生成了和原列表一样的列表
    2. 稍作修改的列表推导式

      格式:['*'+variable+'*' for variable in list]
      例如:list1 = ['a','b','c']
      print(['*'+i+'*' for i in list1])
      >>> ['*a*', '*b*', '*c*']
      返回值:list
      #对variable进行修改,可以是int的操作,也可以是str的操作,具体需根据列表元素来执行
    3. 带有判断条件的列表推导式

      格式:[variable for variable in list if 条件表达式]
      例如:list1 = [2,3,4,2,1,2,23,54,21,33]
      print([i for i in list1 if i>20])
      >>> [23, 54, 21, 33]
      返回值:list
    4. 多个列表推导式

      格式:[variable1+variable2 for variable1 in list1 for variable2 in list2]
      例如:list1 = ['a','b','c']
      list2 = ['I','love','you','!']
      print([x+y for x in list1 for y in list2])
      >>> ['aI', 'alove', 'ayou', 'a!', 'bI', 'blove', 'byou', 'b!', 'cI', 'clove', 'cyou', 'c!']
      返回值:list
    5. 带有判断条件的多个列表推导式

      格式:[variable1+variable2 for variable1 in list1 for variable2 in list2 if 条件表达式]
      例如:list1 = ['a','b','c']
      list2 = ['I','love','you','!']
      print([x+y for x in list1 for y in list2 if list1.index(x)==list2.index(y)])
      >>> ['aI', 'blove', 'cyou']
      返回值:list

Python中list的功能介绍的更多相关文章

  1. Python中set的功能介绍

    Set的功能介绍 1.集合的两种函数(方法) 1. 集合的内置函数 交集 格式:x.__and__(y)等同于x&y 例如:s1 = {'a',1,} s2 = {'b',1,} s3 = { ...

  2. Python中dict的功能介绍

    Dict的功能介绍 1. 字典的两种函数(方法) 1. 字典的内置函数 包含关系 格式:x.__contains__(key)等同于key in x 例如:dic = {'ab':23,'cd':34 ...

  3. Python中tuple的功能介绍

    Tuple的功能介绍 1. 元祖的两种方法 1. 元祖的内置方法 两个元祖的相加 格式:x.__add__(y)等同于x+y 例如:tu1 = (1,2,3,) print(tu1.__add__(( ...

  4. python中multiprocessing.pool函数介绍_正在拉磨_新浪博客

    python中multiprocessing.pool函数介绍_正在拉磨_新浪博客     python中multiprocessing.pool函数介绍    (2010-06-10 03:46:5 ...

  5. laravel框架中超实用的功能介绍

    本篇文章给大家带来的内容是关于laravel框架中超实用的功能介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 让lumen的dd() dump()像laravel一样优雅 1 c ...

  6. Docker 中的网络功能介绍 外部访问容器 容器互联 配置 DNS

    Docker 中的网络功能介绍 | Docker 从入门到实践 https://vuepress.mirror.docker-practice.com/network/ Docker 允许通过外部访问 ...

  7. python中int的功能简单介绍

    Int的功能介绍 1. 绝对值 x.__abs__()等同于abs(x) 2. 加法 x.__add__(y)等同于x+y 3. 与运算 x.__and__(y)等同于x&y 4. 布尔运算 ...

  8. [转载]python中multiprocessing.pool函数介绍

    原文地址:http://blog.sina.com.cn/s/blog_5fa432b40101kwpi.html 作者:龙峰 摘自:http://hi.baidu.com/xjtukanif/blo ...

  9. Python中关于函数的介绍

    一.什么是函数       当我们在日常工作中编写代码时,有没有发现这种情况,写了一套代码,却发现里面有很多段代码出现了有规律的重复,这样就不符合一个合格程序员的标准了,一个合格的程序员编写的代码最重 ...

随机推荐

  1. phpadmin增加使得项目能连接数据库

    感谢:http://jingyan.baidu.com/article/e4511cf332b9832b845eaf27.html 值得注意: 1.phpadmin的目录:D:\developsoft ...

  2. Linq 延迟加载

    IList<Student> ssList = new List<Student>() { , StudentName = "John", } , , St ...

  3. Python内置函数(44)——len

    英文文档: len(s) Return the length (the number of items) of an object. The argument may be a sequence (s ...

  4. Angular 学习笔记 ( CDK - Portal )

    Portal 的主要使用场景是 dynamic component 动态的插入模板或组件. Portal 可分为 2 种. 进入和出去 (in or out) ComponentPortal, Tem ...

  5. 新概念英语(1-29)Come in, Amy.

    How must Amy clean the floor? A:Come in, Amy. Shut the door, please. This bedroom's very untidy. B:W ...

  6. Spring MVC拦截器的配置

    最近在用SpringMVC,想用它的拦截器,但是配置了几次都不成功了,最后翻阅了不少文章终于成功了,遂记录于此,以方便他人. 首先引入命名空间: xmlns:mvc="http://www. ...

  7. django模版中配置和使用静态文件方法

    1 在项目根路径下创建静态文件目录static: test3 是我的项目名,根目录下面: booktest 是一个应用 static是我建立的静态文件目录(这个名字其实可以叫其他的),静态文件都放在这 ...

  8. RxJava系列3(转换操作符)

    RxJava系列1(简介) RxJava系列2(基本概念及使用介绍) RxJava系列3(转换操作符) RxJava系列4(过滤操作符) RxJava系列5(组合操作符) RxJava系列6(从微观角 ...

  9. Java程序员的情书

    java程序员的情书 我能抽象出整个世界但是我不能抽象出你因为你在我心中是那么的具体所以我的世界并不完整我可以重载甚至覆盖这个世界里的任何一种方法但是我却不能重载对你的思念也许命中注定了 你在我的世界 ...

  10. Linux环境下用C语言实现socket 通信---简单代码

    Socket编程实例: 服务器端:一直监听本机的8000号端口,如果收到连接请求,将接收请求并接收客户端发来的消息,并向客户端返回消息. 客户端:client.c /* File Name: clie ...