如何将Python元组转换为C数组?
在本文中,我们将展示如何在Python中将元组转换为C数组。
Python没有像其他编程语言一样的内置数组数据类型,但是您可以使用库(如 Numpy )创建一个数组。
以下是将元组转换为数组的各种方法:
- 使用numpy.asarray()方法
-
使用numpy.array()方法
更多Python相关文章,请阅读:Python 教程
如果您尚未在系统上 安装 NumPy ,请运行以下命令。
pip install numpy
使用numpy.asarray()将元组转换为数组
使用 np.asarray() 函数将Python元组转换为数组。 库函数 np.asarray() 将输入转换为数组。 列表,元组,元组的元组,列表的元组和 ndarrays 都是输入。
算法(步骤)
以下是执行所需任务的算法/步骤:
- 使用import关键字以别名导入NumPy模块。
-
创建一个变量来存储输入元组。
-
打印输入元组。
-
使用 type() 函数(返回对象的数据类型)打印输入元组的数据类型。
-
使用 numpy.asarray() 函数通过将输入元组作为参数传递来将输入元组转换为数组。
-
将输出数组转换为Python元组后打印输出数组。
-
使用 type() 函数(返回对象的数据类型)打印结果输出数组的数据类型。
例子
以下程序使用 numpy.asarray() 将输入元组转换为数组。
# 使用别名导入NumPy模块
import numpy as np
# 输入的元组
inputTuple = (12, 1, 3, 18, 5)
# 打印输入标签
print("InputTuple:", inputTuple)
# 打印输入元组的数据类型
print("InputTuple的类型:", type(inputTuple))
# 使用numpy.asarray()函数将Python元组转换为数组
outputArray = np.asarray(inputTuple)
# 将Python元组转换为数组并打印输出的数组
print("将输入元组转换为数组后的输出数组:\ n", outputArray)
# 打印输出数组的数据类型
print("输出数组的类型:", type(outputArray))
输出
执行上述程序后,将生成以下输出 –
InputTuple: (12, 1, 3, 18, 5)
InputTuple的类型:<class 'tuple'="">
将输入元组转换为数组后的输出数组:
[12 1 3 18 5]
输出数组的类型:<class 'numpy.ndarray'="">
使用numpy.asarray()将列表的元组转换为数组
算法(步骤)
以下是执行所需任务的算法/步骤:
- 创建用于存储输入元组列表的变量。
-
打印输入元组。
-
使用 type() 函数(返回对象的数据类型),打印输入元组的数据类型。
-
使用 numpy.asarray() 函数将输入元组列表转换为数组,将输入元组作为参数传递给它。
-
打印转换输入元组列表为数组后的输出数组。
-
使用 type() 函数(返回对象的数据类型),打印结果输出数组的数据类型。
-
在输出数组上应用 flatten() 函数(将ndarray压缩为一维数组),将输出数组压缩为一维数组。
-
打印结果压缩后的一维数组。
示例
以下程序使用 numpy.asarray() 函数将输入元组列表转换为数组,并返回其压缩后的一维数组 –
#导入别名为np的NumPy模块
import numpy as np
#输入元组
inputTuple = ([1, 10, 5], [3, 6, 4])
#打印输入元组
print("InputTuple:", inputTuple)
#打印输入元组的数据类型
print("Type of Input Tuple:", type(inputTuple))
#使用numpy.asarray()函数将Python元组列表转换为数组
outputArray = np.asarray(inputTuple)
#在转换后的输出数组上打印输出数组。
print("Output array after conversion of input tuple of lists to array:\n", outputArray)
#在输出数组上打印输出数组的数据类型
print("Type of Output Array:", type(outputArray))
#将输出数组压缩为一维数组
flatten_array = outputArray.flatten()
#打印压缩后的一维数组
print("Flattened Array:", flatten_array)
输出
执行以上程序会生成以下输出 –
InputTuple: ([1, 10, 5], [3, 6, 4])
Type of Input Tuple: <class 'tuple'>
Output array after conversion of input tuple of lists to array:
[[ 1 10 5]
[ 3 6 4]]
Type of Output Array: <class 'numpy.ndarray'>
Flattened Array: [ 1 10 5 3 6 4]
numpy.asarray() 函数从元组列表创建一个数组,但它会创建一个二维数组,可以使用 **array.flatten()
使用numpy.array()将元组转换为数组
numpy.array() 函数接受Python对象并返回一个数组。我们将把一个元组对象传递给 np.array() 函数,它将其转换为一个数组。
示例
以下程序使用 numpy.array() 函数将输入元组转换为数组 –
# 导入别名为np的numpy模块
import numpy as np
# 输入元组
inputTuple = (12, 1, 3, 18, 5)
# 打印输入元组
print("InputTuple:", inputTuple)
# 打印输入元组的数据类型
print("Type of InputTuple:", type(inputTuple))
# 使用numpy.array()函数将python元组转换为数组
outputArray = np.array(inputTuple)
# 转换后打印输出数组
print("Output array after conversion of input tuple to array:\n", outputArray)
# 打印输出数组的数据类型
print("Type of OutputArray:", type(outputArray))
输出
运行上述程序将生成以下输出 –
InputTuple: (12, 1, 3, 18, 5)
Type of InputTuple: <class 'tuple'>
Output array after conversion of input tuple to array:
[12 1 3 18 5]
Type of OutputArray: <class 'numpy.ndarray'>
使用numpy.array()将列表元素的元组转换成数组
示例
以下程序使用 numpy.array() 函数将输入的元组列表转换为数组,同时返回其扁平化的数组 −
# 导入别名为np的numpy模块
import numpy as np
# 输入元组
inputTuple = ([1, 10, 5], [3, 6, 4])
# 打印输入元组
print("InputTuple:", inputTuple)
# 打印输入元组的数据类型
print("Type of Input Tuple:", type(inputTuple))
# 使用numpy.array()函数将python元组列表转换为数组
outputArray = np.array(inputTuple)
# 转换后打印输出数组
print("Output array after conversion of input tuple of lists to array:\n", outputArray)
# 打印输出数组的数据类型
print("Type of Output Array:", type(outputArray))
# 将输出数组扁平化为一维数组
flatten_array = outputArray.flatten()
# 打印扁平化的数组
print("Flattened Array:", flatten_array)
输出
运行上述程序将生成以下输出 –
InputTuple: ([1, 10, 5], [3, 6, 4])
Type of Input Tuple: <class 'tuple'>
Output array after conversion of input tuple of lists to array:
[[ 1 10 5]
[ 3 6 4]]
Type of Output Array: <class 'numpy.ndarray'>
Flattened Array: [ 1 10 5 3 6 4]
结论
在本文中,我们学习了如何使用Numpy模块的 array() 和 asarray() 函数将Python元组转换为C数组。在本文中,我们还学习了如何将元组列表转换为数组并展平它们。