Python 列表(list)

  • Python 集合(数组)

    Python编程语言中有四种收集数据类型:
    • List(列表) - 是有序且可更改的集合。允许重复的成员。
    • Tuple(元组) - 是有序且不可更改的集合。允许重复的成员。
    • Set(集合) - 是无序和未索引的集合。没有重复的成员。
    • Dictionary(字典) - 是无序,可变和索引的集合。没有重复的成员。
    选择集合类型时,了解该类型的属性很有用。为特定数据集选择正确的类型可能意味着保留含义,并且可能意味着效率或安全性的提高。
  • List

    列表(List)是有序且可更改的集合。在Python中,列表用方括号括起来。
    thislist = ["apple", "banana", "cherry"]
    print(thislist)
    
    尝试一下
  • 访问项目

    您通过引用索引号访问列表项:
    打印列表的第二项:
    thislist = ["apple", "banana", "cherry"]
    print(thislist[1])
    
    尝试一下
  • 负索引

    负索引是指从头开始,-1指的是最后一项,-2指的是倒数第二项, 依此类推。
    打印列表的最后一项:
    thislist = ["apple", "banana", "cherry"]
    print(thislist[-1])
    
    尝试一下
  • 索引范围

    您可以通过指定范围的起点和终点来指定索引范围。指定范围时,返回值将是包含指定项目的新列表。
    返回第三,第四和第五项:
    thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
    print(thislist[2:5])
    
    尝试一下
    注意:搜索将从索引2(包括)开始,到索引5(不包括)结束。
    请记住,第一项的索引为0。
    通过省略起始值,范围将从第一项开始:
    本示例将项目从开头返回到“orange”:
    thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
    print(thislist[2:5])
    
    尝试一下
    通过省略结束值,范围将继续到列表的末尾:
    此示例从“cherry”到最后返回项目:
    thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
    print(thislist[2:])
    
    尝试一下
  • 负索引范围

    如果要从列表末尾开始搜索,请指定负索引:
    本示例将项目从索引-4(包括)返回到索引-1(排除)
    thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
    print(thislist[-4:-1])
    
    尝试一下
  • 更改项目的值

    要更改特定项目的值,请参考索引号:
    更改第二项:
    thislist = ["apple", "banana", "cherry"]
    thislist[1] = "blackcurrant"
    print(thislist)
    
    尝试一下
  • 遍历列表

    您可以使用 for 循环来遍历列表项 :
    一个一个地打印列表中的所有项目:
    thislist = ["apple", "banana", "cherry"]
    for x in thislist:
      print(x)
    
    尝试一下
    您将在“Python For循环”一章中了解有关for循环的更多信息。
  • 检查项目是否存在

    要确定列表中是否存在指定的项目,请使用in关键字:
    检查列表中是否存在“apple”:
    thislist = ["apple", "banana", "cherry"]
    if "apple" in thislist:
      print("Yes, 'apple' is in the fruits list")
    
    尝试一下
  • 列表长度

    要确定列表中有多少项,请使用以下 len() 函数:
    打印列表中的项目数:
    thislist = ["apple", "banana", "cherry"]
    print(len(thislist))
    
    尝试一下
  • 新增项目

    要将项目添加到列表的末尾,请使用 append() 方法:
    使用 append() 方法附加项目:
    thislist = ["apple", "banana", "cherry"]
    thislist.append("orange")
    print(thislist)
    
    尝试一下
    要在指定的索引处添加项目,请使用 insert() 方法:
    插入一个项目作为第二个位置:
    thislist = ["apple", "banana", "cherry"]
    thislist.insert(1, "orange")
    print(thislist)
    
    尝试一下
  • 除去项目

    有几种方法可以从列表中删除项目:
    remove() 方法删除指定的项目:
    thislist = ["apple", "banana", "cherry"]
    thislist.remove("banana")
    print(thislist)
    
    尝试一下
    pop() 方法删除指定的索引(如果未指定index,则删除最后一项):
    thislist = ["apple", "banana", "cherry"]
    thislist.pop()
    print(thislist)
    
    尝试一下
    del 关键字删除指定索引:
    thislist = ["apple", "banana", "cherry"]
    del thislist[0]
    print(thislist)
    
    尝试一下
    del 关键字也可以完全删除列表:
    thislist = ["apple", "banana", "cherry"]
    del thislist
    
    尝试一下
    clear() 方法清空列表:
    thislist = ["apple", "banana", "cherry"]
    thislist.clear()
    print(thislist)
    
    尝试一下
  • 复制列表

    有很多方法可以制作副本,一种方法是使用内置的List方法 copy()
    使用以下 copy() 方法复制列表:
    thislist = ["apple", "banana", "cherry"]
    mylist = thislist.copy()
    print(mylist)
    
    尝试一下
    制作副本的另一种方法是使用内置方法 list()
    使用以下 list() 方法复制列表:
    thislist = ["apple", "banana", "cherry"]
    mylist = list(thislist)
    print(mylist)
    
    尝试一下
  • 合并两个列表

    在Python中,有几种方法可以连接或连接两个或多个列表。 最简单的方法之一是使用 + 运算符。
    合并列表:
    list1 = ["a", "b" , "c"]
    list2 = [1, 2, 3]
    
    list3 = list1 + list2
    print(list3)
    
    尝试一下
    联接两个列表的另一种方法是将list2中的所有项一个接一个地追加到list1中:
    list1 = ["a", "b" , "c"]
    list2 = [1, 2, 3]
    
    for x in list2:
      list1.append(x)
    
    print(list1)
    
    尝试一下
    使用此 extend() 方法将list2添加到list1的末尾:
    list1 = ["a", "b" , "c"]
    list2 = [1, 2, 3]
    
    list1.extend(list2)
    print(list1)
    
    尝试一下
  • list() 构造函数

    使用 list() 构造函数创建一个列表:
    thislist = list(("apple", "banana", "cherry")) # note the double round-brackets
    print(thislist)
    
    尝试一下
  • 列表方法

    Python 有一组内置方法,可在列表上使用。
    方法 描述
    append() 在列表末尾添加元素
    clear() 从列表中删除所有元素
    copy() 返回列表的副本
    count() 返回具有指定值的元素数
    extend() 将列表(或任何可迭代)的元素添加到当前列表的末尾
    index() 返回具有指定值的第一个元素的索引
    insert() 在指定位置添加元素
    pop() 删除指定位置的元素
    remove() 删除具有指定值的项目
    reverse() 颠倒列表的顺序
    sort() 排序列表