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

如何在Python中将指定输出转换为Array或Matrix?

用Python将图片中的输出转换为数组/矩阵

首先需要把图片里的文本内容提取出来(可通过OCR工具或手动复制),根据文本的格式,对应以下几种处理方式:

情况1:文本为空格+换行分隔的数字

如果图片中的输出是每行一组数字,用空格分隔(示例格式:

0.1 0.2 0.3
0.4 0.5 0.6
0.7 0.8 0.9

),可以用以下方法转换:

纯Python实现(生成二维列表)

# 替换为你从图片提取的文本
text = """0.1 0.2 0.3
0.4 0.5 0.6
0.7 0.8 0.9"""

# 按行分割,每行转成float类型的列表
matrix = [list(map(float, line.split())) for line in text.splitlines()]
print(matrix)

用Numpy生成数组/矩阵

import numpy as np

text = """0.1 0.2 0.3
0.4 0.5 0.6
0.7 0.8 0.9"""

# 方法1:列表推导式转numpy数组
arr = np.array([list(map(float, line.split())) for line in text.splitlines()])

# 方法2:用np.loadtxt更简便
arr = np.loadtxt(text.splitlines())
print(arr)

情况2:文本为Python列表格式(带[]和逗号)

如果图片中的输出是类似嵌套列表的格式(示例格式:

[[1, 2, 3],
 [4, 5, 6],
 [7, 8, 9]]

),可以直接用ast模块解析:

import ast
import numpy as np

text = """[[1, 2, 3],
 [4, 5, 6],
 [7, 8, 9]]"""

# 转成Python二维列表
matrix = ast.literal_eval(text)
# 转成numpy数组
arr = np.array(matrix)
print(arr)

情况3:文本为其他格式(比如带括号、分号分隔)

如果图片中的输出是类似(1 2 3; 4 5 6; 7 8 9)这类格式,先清理文本再转换:

import numpy as np

text = "(1 2 3; 4 5 6; 7 8 9)"
# 去除首尾括号,按分号分割行
cleaned_lines = text.strip('()').split(';')
# 每行处理成数字列表
matrix = [list(map(float, line.strip().split())) for line in cleaned_lines]
arr = np.array(matrix)
print(arr)

内容的提问来源于stack exchange,提问作者mehmet çece

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 16:57:29