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

如何创建指定格式的垂直2D NumPy数组?

实现方法

首先确保你已经安装并导入了NumPy库:

import numpy as np

按照以下步骤即可得到目标格式的垂直2D NumPy数组:

  • 先将原始列表转换为NumPy数组:

    first_name = [["Tom", "Alex", "Sam"], ["Anna", "Bob", "Mike"]] 
    last_name = [["Smith", "Brown", "Lee"], ["Davis", "Allen", "Lewis"]]
    
    fn_arr = np.array(first_name)
    ln_arr = np.array(last_name)
    
  • 对数组进行转置,把原有的2行3列结构转为3行2列,让每一行对应需要配对的名和姓:

    fn_transposed = fn_arr.T
    ln_transposed = ln_arr.T
    
  • 执行元素级的字符串拼接,生成最终结果:

    result = np.core.defchararray.add(fn_transposed + " ", ln_transposed)
    print(result)
    

运行后输出结果如下:

[['Tom Smith' 'Anna Davis']
 ['Alex Brown' 'Bob Allen']
 ['Sam Lee' 'Mike Lewis']]

替代方案

如果不想使用NumPy的字符数组操作,也可以用列表推导式先处理再转成NumPy数组,效果完全一致:

result = np.array([[f"{fn} {ln}" for fn, ln in zip(row_fn, row_ln)] 
                   for row_fn, row_ln in zip(first_name, last_name)]).T

内容的提问来源于stack exchange,提问作者Joe Lee

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 14:52:08