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

Python读取txt单行逗号分隔数值生成指定格式np.array的方法

问题说明

现有一个仅存储单行内容的txt文件,内容会不定期被覆盖,当前文件内存储的实际值为:

5,7,1,1,6,7,27

需求为读取该*.txt文件的内容,存入np.array对象,最终得到的数组结构需为:

new = np.array([[5,7,1,1,6,7,27]])

当前编写的待修正实现代码如下:

import numpy as np
from pathlib import Path
txt = Path('c:\MyFolder\myValue.txt').read_text()
new = np.array([[txt]])
修正方案

原代码的问题是直接将读取到的完整字符串作为数组元素,没有做拆分、类型转换,同时Windows路径未处理转义字符。按以下逻辑修正即可:

  • 路径字符串前加r标记为原始字符串,避免反斜杠被识别为转义符
  • 读取文本后调用strip()去掉首尾的换行、空白字符
  • 按英文逗号拆分字符串,将拆分后的每个子串转为对应数值类型
  • 转换为numpy数组时外层包一层列表,即可得到二维的[[...]]结构

修正后可运行代码:

import numpy as np
from pathlib import Path

# 读取并解析文本内容
txt = Path(r'c:\MyFolder\myValue.txt').read_text().strip()
num_list = [int(item) for item in txt.split(',')]
# 生成目标结构的numpy数组
new = np.array([num_list])

运行后new的输出为array([[ 5, 7, 1, 1, 6, 7, 27]]),完全匹配预期结构。如果文件内后续存储的是浮点数,将代码中int替换为float即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 10:54:25