• 列表:python基础数据类型


    列表:python基础数据类型之一

    其他语言中也有列表的概念,js-->数组,可索引,可切片,可加步长

    列表可以存储大量的数据32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。

    li = [1, 'txt', {'name': 'python', 'author':'龟叔'}, [2, 3, 4], (5, 6)]
    

    第一:索引,切片,切片+步长。

    >>> li[2]
    {'name': 'python', 'author': '龟叔'}
    
    >>> li[2:]
    [{'name': 'python', 'author': '龟叔'}, [2, 3, 4], (5, 6)]
    
    >>> li[-2::-1]
    [[2, 3, 4], {'name': 'python', 'author': '龟叔'}, 'txt', 1]
    

    第二:增删改查

    li2 = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
    

    append 末尾追加
    >>> li2.append('13')
    >>> li2
    ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec', '13']
    
    insert 插入
    >>> li2.insert(6, 'Jul')
    >>> li2
    ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec', '13']
    
    extend 迭代着追加
    >>> li2.extend('abc')
    >>> li2
    ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec', '13', 'a', 'b', 'c']
    
    >>> li2.extend(['aa', 'bb'])
    >>> li2
    ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec', '13', 'a', 'b', 'c', 'aa', 'bb']
    

    删除

    pop 按照索引去删除,返回所删除的元素
    li3 = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
    >>> li3 = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
    >>> li3.pop(0)
    'Jan'
    >>> li3
    ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
    
    remove 按照元素删除 成功无返回值,不成功报错
    li3 = ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul']
    >>> li3.remove('Feb')
    >>> li3
    ['Mar', 'Apr', 'May', 'Jun', 'Jul']
    >>> li3.remove('Feb')
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ValueError: list.remove(x): x not in list
    
    clear 清空后原变量为空数组
    >>> li3 = ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul']
    >>> li3.clear()
    >>> li3
    []
    

    del 按照索引,切片,切片+步长,以及能在内存里删除整个数组

    >>> li3 = ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul']
    >>> del li3[0]
    >>> li3
    ['Mar', 'Apr', 'May', 'Jun', 'Jul']
    
    >>> del li3[-2:]
    >>> li3
    ['Mar', 'Apr', 'May']
    
    >>> li = [1,3, 3,34,9,9]
    >>> del li[::2]
    >>> li
    [3, 34, 9]
    
    >>> del li3
    >>> li3
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    NameError: name 'li3' is not defined
    

    按照索引
    >>> li3 = ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul']
    >>> li3[0] = 'February'
    >>> li3
    ['February', 'Mar', 'Apr', 'May', 'Jun', 'Jul']
    
    按照切片: 原数组可能扩充也可能缩小
    >>> li3 = ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul']
    >>> li3[:2] = [1, 2, 3, 4]
    >>> li3
    [1, 2, 3, 4, 'Apr', 'May', 'Jun', 'Jul']
    
    >>> li3 = ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul']
    >>> li3[1:4] = [1, 2]
    >>> li3
    ['Feb', 1, 2, 'Jun', 'Jul']
    
    按照切片+步长 :只能一一对应
    >>> li3 = ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul']
    >>> li3[1:4] = [1, 2]
    >>> li3
    ['Feb', 1, 2, 'Jun', 'Jul']
    

    查:索引,切片,切片+步长

    for 循环
    >>> li3 = ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul']
    >>> for i in li3:
    ...     print(i)
    ...
    Feb
    Mar
    Apr
    May
    Jun
    Jul
    

    其他方法

    # len
    >>> li3 = ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul']
    >>> len(li3)
    6
    
    # count
    >>> li3.count('Feb')
    1
    
    # index 如同str一样:没有会报错
    >>> li3.index('bad')
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ValueError: 'bad' is not in list
    >>> li3.index('Mar')
    1
    
    # sort()-->从小到大,当有reverse=True时-->从大到小
    >>> li3 = ['Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul']
    >>> li3.sort()
    >>> li3
    ['Apr', 'Feb', 'Jul', 'Jun', 'Mar', 'May']
    >>> li3.sort(reverse=True)
    >>> li3
    ['May', 'Mar', 'Jun', 'Jul', 'Feb', 'Apr']
    
  • 相关阅读:
    IPUtil
    MD5Util
    MyBatis环境配置及入门
    淘宝主页(静态页面)第3天
    淘宝主页(静态页面)第二天
    淘宝主页(静态页面)第1天
    力扣20 有效的括号
    力扣1 two sum
    JAVA可变参数
    JAVA环形队列
  • 原文地址:https://www.cnblogs.com/lanhoo/p/9439397.html
Copyright © 2020-2023  润新知