Python 如何将集合转换为数组?

Python 如何将集合转换为数组?,python,numpy,Python,Numpy,如何将集合转换为数组 我试过: import numpy as np mySet = {1,2,3,4,5} myRandomArray = np.asarray(mySet, dtype=int, order="C") print(myRandomArray) 输出 返回数组(a,数据类型,copy=False,order=order) TypeError:int()参数必须是字符串、类似于对象的字节或数字,而不是“set” 我在哪里犯了错误?数组工厂不能很好地处理非序列可重用性fro

如何将集合转换为数组

我试过:

import numpy as np

mySet = {1,2,3,4,5}

myRandomArray = np.asarray(mySet, dtype=int, order="C")

print(myRandomArray)
输出

返回数组(a,数据类型,copy=False,order=order)

TypeError:int()参数必须是字符串、类似于对象的字节或数字,而不是“set”


我在哪里犯了错误?

数组工厂不能很好地处理非序列可重用性<代码>fromiter在这里更好:

myset = {1,2,3,4,5}
np.array(list(myset))
a = set(range(5)) 
np.fromiter(a,int,len(a))
# array([0, 1, 2, 3, 4]) 

集合已经包含整数,只需执行
np.asarray(mySet)
@yatu,集合已经包含字符串-它甚至意味着什么?@yatu,
np.asarray(mySet,dtype=set,order=“C”)
dtype:data-type,可选数组所需的数据类型。如果未给出,则类型将被确定为在序列中保存对象所需的最小类型。此参数只能用于“向上投射”数组。对于向下转换,请使用.astype(t)方法。
此答案的可能副本可能取决于特定的Python版本,因为。但不可否认,问题也潜伏在OP的请求中。@Leporello我不知道集合和dict实现之间的确切关系,但与DICS不同,集合不记得插入顺序。不管怎么说,你的评论可能适用于任何没有对集合进行排序的答案,我发现除非有必要,否则这样做的代价太高。我认为集合现在也是“有序的”,但你可能是对的,因为你没有提到排序。虽然这个代码片段可能是解决方案,包括解释真的有助于提高你的文章质量。这对未来的用户也会有帮助。我怀疑有什么东西或人会自动标记纯代码的答案。再加上几句多余的话,没人会抱怨的!