Python 如何将元组转换成C数组

Python 如何将元组转换成C数组

在本文中,我们将展示如何在Python中将Python元组转换为C数组。

Python没有像其他编程语言一样内置的数组数据类型,但你可以使用类似 Numpy 的库来创建数组。

以下是将元组转换为数组的各种方法:

  • 使用numpy.asarray()方法

  • 使用numpy.array()方法

如果您还未在系统上安装 NumPy ,请运行以下命令进行安装。

pip install numpy

使用numpy.asarray()将元组转换为数组

使用 np.asarray() 函数将Python元组转换为数组。库函数 np.asarray() 将输入转换为数组。列表、元组、元组的元组、元组的列表和 ndarrays 都是输入。

步骤

以下是执行所需任务的算法/步骤−

  • 使用import关键字导入具有别名的NumPy模块。

  • 创建一个变量来存储输入的元组。

  • 打印输入的元组。

  • 使用 type() 函数(返回对象的数据类型)打印输入元组的数据类型。

  • 使用numpy.asarray()函数将输入的元组转换为数组,将输入元组作为参数传递给它。

  • 将输入的Python元组转换为数组后,打印输出数组。

  • 使用 type() 函数(返回对象的数据类型)打印结果输出数组的数据类型。

示例

以下程序使用 numpy.asarray() 函数将输入元组转换为数组−

# importing NumPy module with an alias name
import numpy as np

# input tuple
inputTuple = (12, 1, 3, 18, 5)

# printing input tuple
print("InputTuple:", inputTuple)

# printing the data type of the input tuple
print("Type of InputTuple:", type(inputTuple))

# converting python tuple to an array using numpy.asarray() function
outputArray = np.asarray(inputTuple)

# printing output array after conversion
print("Output array after conversion of input tuple to array:\n", outputArray)

# printing the data type of the output array
print("Type of OutputArray:", type(outputArray))

输出

执行上述程序后,将会生成以下输出结果−

InputTuple: (12, 1, 3, 18, 5)
Type of InputTuple: 
Output array after conversion of input tuple to array:
[12 1 3 18 5]
Type of OutputArray: <class 'numpy.ndarray'="">

使用numpy.asarray()将一组列表转换为数组

步骤

以下是执行所需任务的算法/步骤:

  • 创建一个变量来存储输入的一组列表。

  • 打印输入的一组列表。

  • 使用 type() 函数(返回对象的数据类型)打印输入一组列表的数据类型。

  • 使用 numpy.asarray() 函数将输入的一组列表转换为数组,将输入的一组列表作为参数传递给该函数。

  • 打印将输入的一组列表转换为数组后的输出数组。

  • 使用 type() 函数(返回对象的数据类型)打印结果输出数组的数据类型。

  • 对输出数组应用 flatten() 函数(将ndarray展平为1维)将输出数组展平为1维。

  • 打印结果展平的数组。

示例

以下程序使用 numpy.asarray() 函数将输入的一组列表转换为数组,并返回其展平后的数组。

# importing NumPy module with an alias name
import numpy as np

# input tuple
inputTuple = ([1, 10, 5], [3, 6, 4])

# printing input tuple
print("InputTuple:", inputTuple)

# printing the data type of the input tupl
print("Type of Input Tuple:", type(inputTuple))

# converting python tuple of lists to an array using numpy.asarray() function
outputArray = np.asarray(inputTuple)

# printing output array after conversion
print("Output array after conversion of input tuple of lists to array:\n", outputArray)

# printing the data type of the output array
print("Type of Output Array:", type(outputArray))

# flattening the output array to 1-dimension
flatten_array = outputArray.flatten()

# printing the flattened array
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() 函数将输入的元组转化为数组 –

# importing numpy module with an alias name
import numpy as np

# input tuple
inputTuple = (12, 1, 3, 18, 5)

# printing input tuple
print("InputTuple:", inputTuple)

# printing the data type of the input tuple
print("Type of InputTuple:", type(inputTuple))

# converting python tuple to an array using numpy.array() function
outputArray = np.array(inputTuple)

# printing output array after conversion
print("Output array after conversion of input tuple to array:\n", outputArray)

# printing the data type of the output array
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() 函数将输入的列表元组转换为数组,并返回其展开后的数组。

# importing numpy module with an alias name
import numpy as np

# input tuple
inputTuple = ([1, 10, 5], [3, 6, 4])

# printing input tuple
print("InputTuple:", inputTuple)

# printing the data type of the input tuple
print("Type of Input Tuple:", type(inputTuple))

# converting python tuple of lists to an array using numpy.array() function
outputArray = np.array(inputTuple)

# printing output array after conversion
print("Output array after conversion of input tuple of lists to array:\n", outputArray)

# printing the data type of the output array
print("Type of Output Array:", type(outputArray))

# flattening the output array to 1-dimension
flatten_array = outputArray.flatten()

# printing the flattened array
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数组。在本文中,我们还学习了如何将元组列表转换为数组并展平它们。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程