Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 列表到数组的转换以使用ravel()函数_Python_Arrays_List_Numpy - Fatal编程技术网

Python 列表到数组的转换以使用ravel()函数

Python 列表到数组的转换以使用ravel()函数,python,arrays,list,numpy,Python,Arrays,List,Numpy,我有一个python列表,我想将其转换为一个数组,以便能够使用ravel()函数。使用: 如果变量b有一个列表,则只需执行以下操作: 将新变量“a”创建为:a=[] 然后将列表分配给“a”作为:a=b 现在“a”在数组中包含列表“b”的所有组件 所以您已经成功地将列表转换为数组。我想要一种不使用额外模块的方法。首先将列表转换为字符串,然后附加到数组: dataset_list = ''.join(input_list) dataset_array = [] for item in dataset

我有一个python列表,我想将其转换为一个数组,以便能够使用
ravel()
函数。

使用:


如果变量b有一个列表,则只需执行以下操作:

将新变量“a”创建为:
a=[]
然后将列表分配给“a”作为:
a=b

现在“a”在数组中包含列表“b”的所有组件


所以您已经成功地将列表转换为数组。

我想要一种不使用额外模块的方法。首先将列表转换为字符串,然后附加到数组:

dataset_list = ''.join(input_list)
dataset_array = []
for item in dataset_list.split(';'): # comma, or other
    dataset_array.append(item)
创建一个int数组和一个列表
使用以下代码:

import numpy as np

myArray=np.array([1,2,4])  #func used to convert [1,2,3] list into an array
print(myArray)

如果您只想在(嵌套的,I's'pose?)列表中调用
ravel
,您可以直接执行该操作,
numpy
将为您执行角色转换:

L = [[1,None,3],["The", "quick", object]]
np.ravel(L)
# array([1, None, 3, 'The', 'quick', <class 'object'>], dtype=object)
L=[[1,无,3],“The”,“quick”,object]]
np.拉威尔(L)
#数组([1,无,3,'The','quick',],dtype=object)

同样值得一提的是。

实际上,
myarray=np.array(mylist)
应该足够了。好吧,asarray更安全,因为它不会复制数组,而只是返回数组,所以使用它是一个好习惯,除非它肯定不会获得原始数组的副本data@EnricoGiampieri公平的但不管怎样,你不需要从中得到一个数组吗?我想我不明白你怎么会不让任何一个命令生成一个新的数组对象。这两个命令都会从一个列表开始创建一个新数组,这是肯定的,但通常情况下,关键是将输入转换为特定的格式以应用特定的方法,这看起来更像是OP的情况。使用asarray是一个好习惯,除非你确定需要一个新的副本。简单地键入
array
就足够了,但是为什么我们在这里的时候就不让OP养成一些好习惯呢?我只是想说@fgb提出了一个适当的解决方案。“.asarray”函数返回numpy对象,而“.array”直接返回数组。无论如何,感谢你们两个!请尝试回答澄清的请求,并改进您的问题,而不是产生许多不太好的问题。最后,仔细阅读。我认为它解决了你的大问题…事实上,不。。。这是完全错误的。所有的变量都指向同一个列表,而不是numpy数组。“i”代表什么?str应该是什么?不可能编辑输入错误:第一行应该是
dataset_list=';'。加入(输入列表)
import numpy as np

myArray=np.array([1,2,4])  #func used to convert [1,2,3] list into an array
print(myArray)
L = [[1,None,3],["The", "quick", object]]
np.ravel(L)
# array([1, None, 3, 'The', 'quick', <class 'object'>], dtype=object)