Skip to main content
 首页 » 编程设计

python之将一维 numpy 数组转换为列表列表

2025年05月04日13jiqing9006

我想将一维 numpy 数组拆分为列表列表,但我不确定该怎么做。

基本上我正在处理一个充满标签的数组:

array(['java database servlets derby', 'java graphics groovy awt basic', 
       'java lucene', ..., 'javascript android', 
       'iphone ios ipad file uiimage', 
       'javascript jquery transition effect'], dtype=object) 

形状:

(5000L,) 

如您所见,每一行都包含由空格分隔的标签。我想将每一行存储为一个列表,所有标签都作为单独的元素,并将这些列表组合成一个列表列表。 结果应该是这样的:

list_of_lists = [["tag","tag","tag"],["tag","tag","tag"]...] 

我怎样才能做到这一点?如果你们知道更好的方法来实现我想要的(即我可以访问每个标签作为指定行的元素的数据结构),我会很高兴听到它。

提前致谢。

请您参考如下方法:

使用列表理解,str.split :

>>> from numpy import array 
>>> a = array(['java database servlets derby', 'java graphics groovy awt basic', 
...            'java lucene', 'javascript android', 
...            'iphone ios ipad file uiimage', 
...            'javascript jquery transition effect']) 
>>> list_of_lists = [x.split() for x in a] 
>>> list_of_lists 
[['java', 'database', 'servlets', 'derby'], 
 ['java', 'graphics', 'groovy', 'awt', 'basic'], 
 ['java', 'lucene'], 
 ['javascript', 'android'], 
 ['iphone', 'ios', 'ipad', 'file', 'uiimage'], 
 ['javascript', 'jquery', 'transition', 'effect']]