You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在创建numpy的ndarray时按指定模式填充数组

直接创建指定模式的5×5 NumPy数组

当然可以直接创建,不用先初始化再填充,给你几种简单的实现方式:

  • 方法一:使用np.tile()
    这个函数可以将指定数组重复指定次数,非常适合这种每行重复的场景:

    import numpy as np
    arr = np.tile(np.arange(5), (5, 1))
    print(arr)
    

    这里np.arange(5)生成[0,1,2,3,4],(5,1)表示把这个数组在行方向重复5次,列方向重复1次,直接得到目标数组。

  • 方法二:使用np.repeat()
    先把一维数组转成二维行向量,再沿着行方向重复:

    import numpy as np
    arr = np.repeat(np.arange(5)[np.newaxis, :], 5, axis=0)
    print(arr)
    

    np.newaxis用来给一维数组增加一个维度,变成[[0,1,2,3,4]],然后axis=0指定沿着行的方向重复5次。

  • 方法三:利用广播机制
    创建一个全零的5×5数组,再和一维的0-4数组相加,NumPy会自动把一维数组广播到每一行:

    import numpy as np
    arr = np.zeros((5,5), dtype=int) + np.arange(5)
    print(arr)
    

    注意要指定dtype=int,不然默认是浮点型,结果会带小数点。

  • 方法四:直接列表生成(不推荐)
    用Python列表生成式的方式创建,不过要注意:这种方式生成的数组,所有行其实是同一个数组对象的引用,修改其中一行会影响所有行,所以谨慎使用:

    import numpy as np
    arr = np.array([np.arange(5)]*5)
    print(arr)
    

内容的提问来源于stack exchange,提问作者eresque-

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 14:11:13