geomo 2022-08-01 08:28 采纳率: 100%
浏览 119
已结题

使用numpy.array把列表转换成数组的问题,求解答

#问题代码如下
a = []
for i in range(281):
a.append(一个(50 * 50 * 50)的numpy数组)
a = np.array(a)
#经过这个代码之后,a应该是一个(281 * 50 * 50 * 50)的numpy数组,但实际是一个(281, )的数组
#当我把循环改成了28之后,得到的a是一个(28 * 50 * 50 * 50)的数组,就没有问题了
#之前一直这么用的,不知道为什么281就出了问题,我实在不能理解,求佬们解答

  • 写回答

1条回答 默认 最新

  • Hann Yang 全栈领域优质创作者 2022-08-01 11:22
    关注

    没问题啊:

    1. import numpy as np
    2. a = []
    3. for i in range(281):
    4. a.append(np.array([[[0]*50]*50]*50))
    5. a = np.array(a)
    6. print(a.shape)
    7. print(a[0].shape)

    输出:
    (281, 50, 50, 50)
    (50, 50, 50)

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    geomo 2022-08-01 12:42

    是我的原因,append进去的那个数组是读文件得到的,我弄错了文件的数量,实际是280个,第281个文件得到的是个40*40*40的数组,这样再用np.array就这样了

    回复
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 8月8日
  • 已采纳回答 8月1日
  • 修改了问题 8月1日
  • 修改了问题 8月1日
  • 展开全部
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部