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() | 删除指定位置的元素 |
去掉() | 删除具有指定值的项目 |
相反() | 颠倒列表的顺序 |
分类() | 排序列表 |