当前位置: 首页 > news >正文

河北网络公司网站建设在线搜索引擎

河北网络公司网站建设,在线搜索引擎,网站设计 mac,佛山市公司网站建设哪家好目录用np.array(a)将列表转换为数组列表转数组的特殊情况(一)列表转数组的特殊情况(二)针对子元素个数不一致的解决办法用a.tolist()函数将数组转化为列表在python的学习中,经常会用到数组与列表的相互转化,本文主要介绍下关于数组与列表转化的问题。用n…

目录

  • 用np.array(a)将列表转换为数组
  • 列表转数组的特殊情况(一)
  • 列表转数组的特殊情况(二)
  • 针对子元素个数不一致的解决办法
  • 用a.tolist()函数将数组转化为列表

在python的学习中,经常会用到数组与列表的相互转化,本文主要介绍下关于数组与列表转化的问题。

用np.array(a)将列表转换为数组

程序显示:

import numpy as np
import randoma=[[[random.randint(1,9) for x in range(5)]for i in range(3)]for j in range(2)]
print(type(a))
print(a)b=np.array(a)
print(type(b))
print(b)

输出的结果为:

<class 'list'>[[[2, 2, 1, 3, 5], [9, 6, 3, 7, 2], [4, 9, 7, 2, 5]], [[6, 4, 9, 4, 9], [1, 4, 7, 2, 5], [2, 6, 3, 6, 7]]]<class 'numpy.ndarray'>[[[2 2 1 3 5][9 6 3 7 2][4 9 7 2 5]][[6 4 9 4 9][1 4 7 2 5][2 6 3 6 7]]]

由上面的结果可以看出很顺利就完成了列表到数组的转化。

列表转数组的特殊情况(一)

import numpy as np
import randomf=[]
e=[random.randint(1,9) for x in range(5)]
f.append(np.array(e))
g=[random.randint(1,9) for x in range(5)]
f.append(g)
print(f)
f1=np.array(f, dtype=object)
print("转为数组后:")
print(f1)

结果显示为:

[array([7, 3, 7, 4, 2]), [7, 9, 8, 1, 5]]转为数组后:[[7 3 7 4 2][7 9 8 1 5]]

可以看出原来程序中的f是既含有数组类型,又含有列表类型。由于数组和列表的长度是一样的,所以可以顺利将f的所有数据全部转化为数组型,得到的f1。

说到这里,那么就会想到,如果一个列表中含有多个子列表,子列表中的数据量不完全相同,那么结果会怎样呢?

列表转数组的特殊情况(二)

import numpy as np
import randomf=[]
e=[random.randint(1,9) for x in range(5)]
f.append(np.array(e))
# 此处做了修改
g=[random.randint(1,9) for x in range(4)]
f.append(g)
print(f)
f1=np.array(f, dtype=object)
print("转为数组后:")
print(f1)
print(len(f))

这次运行后得到的显示为:

[array([7, 5, 3, 9, 4]), [8, 7, 9, 1]]转为数组后:[array([7, 5, 3, 9, 4]) list([8, 7, 9, 1])]2

我们可以发现,运行的结果虽然没有问题,但是得到的新的f1却不是我们想要的,我们希望f1里面包含9个元素,但是通过len(f1)可以看到只有2个元素了。

由此可以看到,要想通过np.array函数将上面程序中的情况转化为数组,需要保证每个f中的每个子元素中含的子元素个数相同。

针对子元素个数不一致的解决办法

import numpy as np
import randomf=[]
e=[random.randint(1,9) for x in range(5)]
f.append(np.array(e))
# 此处做了修改
g=[random.randint(1,9) for x in range(4)]
f.append(g)
print(f)
f1=np.array(f, dtype=object)
print("转为数组后:")
print(f1)
print(len(f))print("重新转化")
f1=f1[0].tolist()+f1[1]
print(f1)
print(len(f1))

运行后的结果显示:


[array([5, 8, 6, 4, 5]), [1, 4, 3, 6]]
转为数组后:
[array([5, 8, 6, 4, 5]) list([1, 4, 3, 6])]
2
重新转化
[5, 8, 6, 4, 5, 1, 4, 3, 6]
9

可以看出这次成功得到想要的结果了。

由于在进行多重列表转数组时会因为子列表中元素个数不一样从而导致出错,所以在此进行一下总结。

用a.tolist()函数将数组转化为列表

通过上面的例子就可以看到,博主将f1中的第一个子元素(是一个数组)转化为了列表。

在此再用一个程序来说明:

import numpy as np
import randoma=[random.randint(1,9) for x in range(5)]
a_array=np.array(a)
print(a_array)
print(type(a_array))
a_list=(a_array).tolist()
print(a_list)
print(type(a_list))

结果显示为:

[6 1 9 3 1]
<class 'numpy.ndarray'>
[6, 1, 9, 3, 1]
<class 'list'>
http://www.mmbaike.com/news/40891.html

相关文章:

  • 兰州市城关区建设局网站站长之家站长工具综合查询
  • 北京网站建设方面郑州今日头条
  • 建设网站价钱网络推广方法大全
  • 图书网站建设策划书免费网站建设
  • 政府网站建设方案网站seo推广优化
  • 乐平城市建设局网站百度整站优化
  • 邢台做网站流程上海网络关键词优化
  • 代理网页浏览器北京seo优化服务
  • wordpress注册会员插件长沙seo培训班
  • 美女做那种视频网站深圳网络推广公司哪家好
  • 东莞网站建设推广seo自然搜索优化排名
  • 怎么在网上接网站建设游戏代理怎么找渠道
  • 济南企业网站建设下载谷歌浏览器并安装
  • 注册个人网站要钱吗外链在线发布工具
  • 网站使用问题网站是如何建立的
  • 现在做网站怎么样百度知道合伙人答题兼职入口
  • 免费网站建设咨询大连今日新闻头条
  • 帮做网站的简单的seo
  • 太原哪里做网站网络营销策略分析论文
  • 免费网站部署百度推广开户渠道公司
  • 网站的客服怎么做推广平台排行榜
  • youtube上做美食的视频网站镇江关键字优化公司
  • 怎么用html做百度首页网站今日新闻内容摘抄
  • 网站设计抄袭产品推广的渠道
  • 参考文献网站开发关键词seo是什么意思
  • 做的比较早的海淘网站网站策划是什么
  • 厦门 网站制作企业宣传片
  • 外贸soho通过网站开发客户友情链接有什么用
  • 线上推广有哪些方式优化网站有哪些方法
  • 厦门十大装修公司排名榜上海关键词seo