在 Python 中如何将数组转换为列表

在 Python 中如何将数组转换为列表

使用 Pythontolist() 函数,您可以将一个数组转换为一个列表。以下是一个例子:

import array
arr = array.array("i", [1, 2, 3, 4, 5])
lst = arr.tolist()
print(type(lst)) # <class 'list'>
print(lst) 

输出

[1, 2, 3, 4, 5]

在这个例子中,我们使用 array.array() 构造函数 创建了一个类型为 “i”(代表整数)的数组 arr。然后使用 tolist() 方法 将数组 arr 转换为列表 lst。最后,使用 type() 函数 验证生成的 lst 确实是一个列表,并使用 print() 函数 显示列表的内容。

另一种方法是使用列表推导式(list comprehension)。列表推导式是一种简洁的方式,可以通过将函数应用于现有列表的每个元素来创建一个新列表。以下是使用列表推导式将数组转换为列表的示例:

import array
arr = array.array("i", [1, 2, 3, 4, 5])
lst = [x for x in arr]
print(type(lst)) # <class 'list'>
print(lst) 

输出

[1, 2, 3, 4, 5]

在这个例子中,使用 for() 循环迭代数组 arr,并使用列表推导式将数组的每个元素 x 添加到一个新列表 lst 中。最后,使用 type() 函数验证了生成的 lst 确实是一个 列表 并使用 print() 函数显示了该列表的内容。

注意,数组的元素不会被复制或复制到列表中。相反,列表将引用与初始数组相同的条目。这意味着修改列表也会修改初始数组。以下是一个示例以演示这一点:

import array
arr = array.array("i", [1, 2, 3, 4, 5])
lst = arr.tolist()
lst[0] = 10
print(arr) 

输出

array('i', [10, 2, 3, 4, 5])

在这个例子中,使用 tolist() 方法 将数组 arr 转换为一个列表 lst。然后,将列表 lst 的第一个元素修改为 10。当您运行代码时,可以看到原始数组 arr 也已被修改,因为数组的第一个元素现在也是 10

如果您想创建一个与数组具有相同元素的完全独立的列表,您需要使用 copy 模块的 copy() 方法。以下是一个示例:

import array
import copy
arr = array.array("i", [1, 2, 3, 4, 5])
lst = copy.copy(arr)
lst[0] = 10
print(arr) 

输出

array('i', [1, 2, 3, 4, 5])

在这个例子中,我们使用 copy.copy() 方法 创建了数组 arr 的一个浅拷贝,并将其赋值给列表 lst。现在,当我们将列表 lst 的第一个元素修改为 10 时,原始数组 arr 不受影响。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Python 教程