
Python 的 list 是最通用的数据类型。关于列表的一个重要的事情是,列表中的项目不需要是相同的类型。在 Python 编程语言中,有四种集合数据类型。
- 列表是有序和可改变的集合。它允许重复的成员。
- 元组 是一个有序且不可改变的集合。它允许重复的成员。
- Set是无序和无索引的集合--没有重复的成员。
- Dictionary是一个无序的、可改变的、有索引的集合。没有重复的成员。
在这个例子中,我们将谈论 Python List。列表是一个有序和可改变的集合。在 Python 中,列表是用方括号写的。
Python List
Python List是一种内置的数据类型,在方括号之间有逗号分隔的值(元素)。列表可能包含有其不同位置的重复值;因此,在创建列表时可以将多个不同的或重复的值作为一个序列传递。
让我们创建一个列表,就像把不同的逗号分隔的值放在方括号之间一样简单。请看下面的代码。
# app.py
listA = ['Game Of Thrones', 8, 'Stranger Things', 3, 'Friends', 10]
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
print(listA)
print(listB)
请看下面的输出。
➜ pyt python3 app.py
['Game Of Thrones', 8, 'Stranger Things', 3, 'Friends', 10]
['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
➜ pyt
与字符串的索引类似,列表的索引从 0 开始,列表可以被切分,连接,等等。
如何访问 Python 列表中的值
要访问 Python 列表中的元素,参考索引号。
请看下面的代码。
# app.py
listA = ['Game Of Thrones', 8, 'Stranger Things', 3, 'Friends', 10]
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
print(listA[2])
print(listB[1])
如果我们想访问列表中的值,使用方括号与索引一起进行切分,以获得该索引处的可用值。
# app.py
listA = ['Game Of Thrones', 8, 'Stranger Things', 3, 'Friends', 10]
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
print("listA[2]: ", listA[2])
print("listB[1:2]: ", listB[1:2])
见下面的输出。
➜ pyt python3 app.py
listA[2]: Stranger Things
listB[1:2]: ['Millie Bobby Brown']
➜ pyt
更新 Python 列表
要在 Python 中更新列表,可以使用列表的索引号并更新索引处的新元素。如果我们想改变一个特定元素的值,那么我们必须参考索引号。请看下面的代码。
# app.py
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
print('Before change', listB)
listB[2] = 'Emma Mackey'
print('After change', listB)
请看下面的输出。
➜ pyt python3 app.py
Before change ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
After change ['Emilia Clarke', 'Millie Bobby Brown', 'Emma Mackey']
循环浏览一个列表
要在Python中迭代一个列表,使用for循环。你可以使用 for 循环,如果。 如果我们想通过一个循环 进行迭代。请看下面的代码。
# app.py
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
for item in listB:
print(item)
请看输出。
➜ pyt python3 app.py
Emilia Clarke
Millie Bobby Brown
Jennifer Aniston
➜ pyt
检查元素是否存在
在Python中检查一个元素是否存在,使用if...in condition。我们可以使用if条件检查列表中的项目是否存在。请看下面的代码。
# app.py
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
if "Millie Bobby Brown" in listB:
print('Millie is Stranger Things Star')
请看下面的输出。
➜ pyt python3 app.py
Millie is Stranger Things Star
➜ pyt
Python 列表长度
要检查Python List 的长度,使用len()函数。如果我们想确定一个列表有多少个元素,使用**len()**方法。
# app.py
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
print(len(listB))
请看下面的输出。
➜ pyt python3 app.py
3
➜ pyt
在这里,我们得到的输出是三,因为列表包含了三个项目。
在 Python 列表中添加元素
要向Python 列表 添加 元素,请使用list append()方法。我们可以使用 append() 方法在列表中添加或追加新元素。请看下面的代码。
# app.py
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
listB.append('Emma Mackey')
print(listB)
请看下面的输出。
➜ pyt python3 app.py
['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston', 'Emma Mackey']
➜ pyt
如果我们想在指定的索引处插入一个元素,我们可以使用insert()方法。见下面insert()方法的语法。
insert(index, item)
请看下面的代码示例。
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
listB.insert(2, 'Emma Mackey')
print(listB)
请看下面的输出。
➜ pyt python3 app.py
['Emilia Clarke', 'Millie Bobby Brown', 'Emma Mackey', 'Jennifer Aniston']
➜ pyt
看,我们已经在索引2处插入了一个元素。记住,索引是从2开始的。
从 Python 列表中删除一个元素
要从 Python 列表中删除一个元素,请使用list pop() 方法。有几种方法可以从 Python List 中删除项目。 首先,我们将看到Python List pop()方法。
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
listB.pop()
print(listB)
它将删除列表中的最后一个项目。因此,在我们的例子中,Jennifer Aniston 将被删除。请看下面的输出。
➜ pyt python3 app.py
['Emilia Clarke', 'Millie Bobby Brown']
➜ pyt
现在,让我们看看Python List remove()方法。
Python remove() 方法将从列表中删除指定的项目。我们需要传递项目名称。
# app.py
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
listB.remove('Emilia Clarke')
print(listB)
请看输出结果。
➜ pyt python3 app.py
['Millie Bobby Brown', 'Jennifer Aniston']
➜ pyt
还有一个叫del 的关键字 , 它也是将项目从列表中删除。请看下面的例子。
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
del listB[0]
print(listB)
请看输出。
➜ pyt python3 app.py
['Millie Bobby Brown', 'Jennifer Aniston']
➜ pyt
clear() 方法清空了列表。请看下面的代码。
listB = ['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
listB.clear()
print(listB)
请看输出结果。
➜ pyt python3 app.py
[]
➜ pyt
列表()构造函数
你可以使用 list() 构造函数来制作一个新的列表。请看下面的例子。
# app.py
listB = list(('Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston'))
print(listB)
在上面的代码中,我们需要添加双圆括号。请看下面的输出。
➜ pyt python3 app.py
['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
➜ pyt
所以,使用 list() 构造函数来制作一个列表。
复制一个列表
你不能仅仅通过输入list2 = list1 来复制一个列表,因为list2将仅仅是对list1 的引用,在list1中做出的改变也会自动在list2中做出。
有一些方法可以实现;一种方法是使用内置的 List 方法 copy() 。
请看下面的 copy() 方法代码示例。
listB = list(('Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston'))
listM = listB.copy()
print(listM)
请看输出结果。
➜ pyt python3 app.py
['Emilia Clarke', 'Millie Bobby Brown', 'Jennifer Aniston']
➜ pyt
#List 方法
Python 有一组内置的方法,你可以在列表上使用。
| 方法 | 描述 |
|---|---|
| append() | 在列表的最后添加一个项目。 |
| clear() | 删除列表中的所有项目。 |
| copy() | 返回列表的副本。 |
| count() | 返回具有指定值的项目的数量。 |
| extend() | 将一个列表(或任何可迭代的)中的项目,添加到当前列表的末尾。 |
| index() | 返回具有指定值的第一个项目的索引。 |
| insert() | 在指定的位置添加一个项目。 |
| pop() | 移除指定位置的项目。 |
| remove() | 移除具有指定值的项目。 |
| reverse() | 反转列表的顺序。 |
| sort() | 对列表进行排序。 |
本教程到此为止。