Python/python lists

来自菜鸟教程
跳转至:导航、​搜索

<languages />

Python列表

Python集合(数组)

Python编程语言中有四种收集数据类型:

  • List 是有序且可更改的集合。允许重复的成员。
  • 元组 是有序且不可更改的集合。允许重复的成员。
  • Set 是无序和未编制索引的集合。没有重复的成员。
  • 字典 是无序,可变和索引的集合。没有重复的成员。

选择集合类型时,了解该类型的属性很有用。为特定数据集选择正确的类型可能意味着保留含义,并且可能意味着效率或安全性的提高。

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。


通过省略起始值,范围将从第一项开始:

本示例将项目从开头返回到“橙色”:

thislist = ["apple", "banana", "cherry", "orange", 
  "kiwi", "melon", "mango"]

print(thislist[:4])

通过省略结束值,范围将继续到列表的末尾:

本示例从“ 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)

您将了解更多有关 for 在我们的循环 Python For循环

章节。

检查项目是否存在

要确定列表中是否存在指定的项目,请使用 in 关键词:

检查列表中是否存在“苹果”:

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() 追加项目的方法:

thislist = ["apple", "banana", "cherry"]

thislist.append("orange")

print(thislist)

要在指定索引处添加项目,请使用 插入() 方法:

插入一个项目作为第二个位置:

thislist = ["apple", "banana", "cherry"]

thislist.insert(1, "orange")

print(thislist)

除去项目

有几种方法可以从列表中删除项目:

The remove() 方法删除指定的项目:

thislist = ["apple", "banana", "cherry"]

thislist.remove("banana")

print(thislist)

The pop() 方法将删除指定的索引(如果未指定index,则删除最后一项):

thislist = ["apple", "banana", "cherry"]

thislist.pop()

print(thislist)

The del 关键字删除指定的索引:

thislist = ["apple", "banana", "cherry"]

  del
thislist[0]
print(thislist)

The del 关键字也可以完全删除列表:

thislist = ["apple", "banana", "cherry"]

  del
thislist

The clear() 方法清空列表:

thislist = ["apple", "banana", "cherry"]

  thislist.clear()
print(thislist)

复制清单

您不能仅通过键入以下内容来复制列表 list2 = list1 ,因为: list2 只会是 reference to list1 以及所做的更改 list1 也将自动制成 list2 .

有很多方法可以制作副本,一种方法是使用内置的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中:

将list2追加到list1中:

  list1 = ["a", "b" , "c"]
list2 = [1, 2, 3]


for x in list2:
  list1.append(x)

print(list1)

或者你可以使用 extend() 方法,目的是将一个列表中的元素添加到另一个列表中:

使用 extend() 在list1的末尾添加list2的方法:

  list1 = ["a", "b" , "c"]
list2 = [1, 2, 3]

list1.extend(list2)

  print(list1)

list()构造函数

也可以使用 list() 构造函数以创建新列表。

使用 list() 构造一个清单:

thislist = list(("apple", "banana", "cherry")) # note the double round-brackets

print(thislist)

清单方法

Python有一组内置方法,可在列表上使用。

方法 描述
附加() 在列表末尾添加元素
明确() 从列表中删除所有元素
复制() 返回列表的副本
计数() 返回具有指定值的元素数
延伸() 将列表(或任何可迭代)的元素添加到当前列表的末尾
指数() 返回具有指定值的第一个元素的索引
插入() 在指定位置添加元素
pop() 删除指定位置的元素
去掉() 删除具有指定值的项目
相反() 颠倒列表的顺序
分类() 排序列表