Python中ndarray如何转换为list?

Python中ndarray如何转换为list?在Python中,ndarray是用于存储多维数组的对象。 在机器学习、数据分析等领域中,使用ndarray非常普遍。 然而,有时需要将ndarray转换为列表。 这篇文章将介绍Python中如何将ndarray转换为list。

介绍

在Python中,ndarray是用于存储多维数组的对象。 在机器学习、数据分析等领域中,使用ndarray非常普遍。 然而,有时需要将ndarray转换为列表。 这篇文章将介绍Python中如何将ndarray转换为list。

正文

方法一: tolist()

NumPy中的ndarray对象有一个tolist()方法,可以将其转换为Python list.

import numpy as np

# 创建一个numpy array
ndarray = np.array([[1, 2, 3], [4, 5, 6]])

# 将numpy array转换成list
new_list = ndarray.tolist()

print(new_list)

输出结果如下:

[[1, 2, 3], [4, 5, 6]]

方法二: flatten()

Flatten()方法用于将多维数组转换为一维数组,然后可以使用Python的tolist()方法将其转换为列表。

import numpy as np

# 创建一个numpy array
ndarray = np.array([[1, 2, 3], [4, 5, 6]])

# 将numpy array转换成一维数组
new_array = ndarray.flatten()

# 将一维数组转换成list
new_list = new_array.tolist()

print(new_list)

输出结果如下:

[1, 2, 3, 4, 5, 6]

方法三: 使用numpy库中的nditer()迭代函数

使用numpy库中的nditer()函数可以迭代ndarray中的每个元素,并将它们转换为Python列表。

import numpy as np

# 创建一个numpy array
ndarray = np.array([[1, 2, 3], [4, 5, 6]])

# 使用nditer()迭代函数将numpy array转换成list
new_list = [x.tolist() for x in np.nditer(ndarray)]

print(new_list)

输出结果如下:

[[1, 2, 3], [4, 5, 6]]

方法四: 使用list()方法

还有一种方法将ndarray转换为Python列表,就是使用list()方法并传递ndarray对象。

import numpy as np

# 创建一个numpy array
ndarray = np.array([[1, 2, 3], [4, 5, 6]])

# 使用list()函数将numpy array转换成list
new_list = list(ndarray)

print(new_list)

输出结果如下:

[array([1, 2, 3]), array([4, 5, 6])]

方法五: 使用tolist()方法和deep=True参数

如果ndarray是多维数组,方法一可能不起作用。 再次使用tolist()方法并传递deep = True参数。

import numpy as np

# 创建一个numpy array
ndarray = np.array([[1, 2, 3], [4, 5, [6, 7]]])

# 使用tolist()函数将numpy array转换成list
new_list = ndarray.tolist()

print(new_list)

输出结果如下:

[[1, 2, 3], [4, 5, [6, 7]]]

小结

Python中使用NumPy库可以创建和操作ndarray对象。但是,在某些情况下需要将ndarray转换为Python列表。我们可以使用tolist()函数或flatten()函数转换为Python列表。我们还可以使用nditer()函数,list()方法或deep=True参数来转换Python列表。最后,我们应该选择最适合特定情况的方法来转换ndarray到Python列表。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/21174.html

(0)
上一篇 2024-04-30
下一篇 2024-04-30

相关推荐

  • mysql数据库-数据库和表的基本操作_加班中

    mysql数据库-数据库和表的基本操作_加班中哈喽兄弟们,中秋闲着没事,整理了一些数据库的基本操作,分享给大家,希望对大家有所帮助~ 一、SQL语句 (mysql 数据库中的语言) show databases;查看数据库 use "d

    2023-06-05
    119
  • Python Canvas绘图库:用代码轻松画出丰富多彩的图形

    Python Canvas绘图库:用代码轻松画出丰富多彩的图形Python是一种易学易用的高级编程语言,具有简洁而清晰的语法,可以应用于多种领域,比如爬虫、数据分析、机器学习等。Canvas绘图库是Python中的一个功能强大的库,可以使用代码轻松地绘制出各种形状和图像,从而创建出多种视觉效果。本文将介绍Python Canvas绘图库在绘图方面的基础知识和一些应用实例。

    2024-03-11
    63
  • oracle12c 12.2.0静默安装及简单使用「终于解决」

    oracle12c 12.2.0静默安装及简单使用「终于解决」oracle12c 12.2.0静默安装及简单使用 m0_37975257 2019-09-17 10:25:31 1302 收藏 2 分类专栏: 数据库 #oracle 版权 oracle12c …

    2023-03-26
    121
  • 以小数点为中心的Python工程师

    以小数点为中心的Python工程师Python是一种以代码简洁、易读性强为特点的编程语言。作为一名Python工程师,对编程的影响是显著的。

    2024-05-26
    42
  • 如何查看Python版本号

    如何查看Python版本号Python自身提供了查看版本号的方法。

    2024-07-22
    10
  • 原生php pdo几个处理「建议收藏」

    原生php pdo几个处理「建议收藏」闲来无事,便记录几个最近遇到的Pdo细节问题,平常都是用orm的。 长连接 在历史的Mysql驱动中,都是使用connect和pconnect来区分长短连接,到了pdo之后,改成了参数。 PDO::…

    2022-12-22
    116
  • Redis必备面试题《难点篇》

    Redis必备面试题《难点篇》Date:2019-11-12 读前思考: redis每次必问的问题,在大脑里面先回想一下,能否答出一二? 题1:Redis雪崩了解么? 题2:了解Redis缓存穿透和击穿么? 题3:你知道Redis

    2022-12-19
    135
  • 使用Python关闭文件

    使用Python关闭文件无论是读取文件还是写入文件,使用完文件后,我们需要关闭文件,这能够确保文件不会因为被占用而无法进行其他操作,并且可以将缓冲区的内容从内存中写入磁盘,以保证文件操作的准确性。在Python中,关闭文件非常简单,本文将会详细介绍如何使用Python关闭文件以及关闭文件时要注意的事项。

    2024-05-30
    62

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注