【简介】
1、在 Python 中,我们通常使用术语 “列表”(List)来表示有序、可变的序列。列表是一种数据结构,可以容纳任意类型的元素,并且可以根据需要进行修改。
与其他编程语言中的数组不同,Python 中的列表具有更灵活的特性。列表可以包含不同类型的 元素,可以动态调整大小,可以进行切片操作和迭代,以及支持许多内置的方法和函数。
因此,在 Python 中,我们通常使用术语 “列表” 来表示有序的集合,而不是使用 “数组” 这个术语。
2、需要注意的是,Python 中也有一个名为 “数组”(Array)的模块,它提供了一种固定大小的、同质的数据结构。但是,通常情况下,我们更倾向于使用列表来处理动态大小和异质元素的情况。
当涉及到列表和数组的用法时,以下是一些常见的操作和方法:
【列表(List)的用法:】
[]
或者使用 list()
函数来创建一个空列表或包含元素的列表。list[start:stop:step]
来获取列表的子序列。append()
方法在列表末尾添加元素,使用 insert()
方法在指定位置插入元素。del
语句、remove()
方法或 pop()
方法来删除列表中的元素。for
循环。sort()
、reverse()
、count()
、index()
等。【数组(Array)的用法:】
import array
导入数组模块。array.array()
函数来创建一个数组,需要指定数组的类型码。append()
、insert()
、remove()
等。以下是一些更详细的解释和示例:
列表(List)的用法:
[]
创建一个空列表: my_list = []
list()
函数创建一个空列表: my_list = list()
my_list = [1, 2, 3, 4]
print(my_list[0])
my_list[0] = 10
sub_list = my_list[1:3]
append()
方法在列表末尾添加元素: my_list.append(5)
insert()
方法在指定位置插入元素: my_list.insert(2, 6)
del
语句删除列表中的元素: del my_list[0]
remove()
方法删除指定的元素: my_list.remove(3)
pop()
方法删除指定位置的元素,并返回该元素的值: my_list.pop(1)
for
循环遍历列表中的元素:for item in my_list:
print(item)
8. 列表方法:
sort()
、reverse()
、count()
、index()
等。例如,使用 sort()
方法对列表进行排序:my_list.sort()
数组(Array)的用法:
import array
导入数组模块: import array
array.array()
函数来创建一个数组,需要指定数组的类型码。例如,创建一个包含整数的数组:my_array = array.array(‘i’, [1, 2, 3, 4])
3. 访问元素:
print(my_array[0])
my_array[0] = 10
append()
、insert()
、remove()
等。例如,使用 append()
方法在数组末尾添加元素:my_array.append(5)
【如何创建二维数组】
rows = 3
cols = 4
my_array = [[0] * cols for _ in range(rows)]
print(my_array[1][2]) # 访问第2行第3列的元素
my_array[0][1] = 10 # 修改第1行第2列的元素
[[0] * cols for _ in range(rows)]
是一个使用列表推导式创建二维数组的表达式。让我详细解释它的工作原理:
range(rows)
:range()
函数生成一个从0到 rows-1
的整数序列,用于表示二维数组的行号。0
:这是内层列表的初始值,我们将其设置为0。[0] * cols
:这是一个简单的列表乘法操作,将0重复 cols
次,生成一个包含 cols
个0的列表。for _ in range(rows)
:这是一个迭代语句,用于遍历行号的整数序列。[[0] * cols for _ in range(rows)]
:这是一个列表推导式,它将内层列表 [0] * cols
重复 rows
次,生成一个包含 rows
行的二维数组。for i in range(3):
lst02 = list(map(int, input().split()))
lst01.append(lst02)
1、在这个代码中,lst01
是一个空列表,用于存储二维数组的行。然后,使用一个循环来迭代3次,每次迭代都会创建一个新的列表 lst02
,并将其作为一行添加到 lst01
中。
2、在每次迭代中,使用 input().split()
获取输入的字符串,并使用 map(int, ...)
将每个字符串转换为整数。然后,使用 list()
函数将转换后的整数列表存储在 lst02
中。
3、最后,通过 lst01.append(lst02)
将 lst02
添加到 lst01
中,形成一个二维数组。
这样,你就可以通过循环获取多行输入,并将每行的元素存储在二维数组中。