Python 2.7中导入.npy文件及查看内容的方法求助
解决Python 2.7中.npy文件导入问题
第一步:先确认文件路径与存在性
很多时候导入无输出是因为文件路径不对,先做基础检查:
- 用
os模块验证文件是否存在:import os file_path = 'preflop.ea.npy' print(os.path.exists(file_path)) # 返回True说明路径正确,False则路径错误 - 如果返回False,要么把文件移到当前脚本的工作目录,要么改用绝对路径导入,比如:
np.load('/Users/xxx/Documents/preflop.ea.npy') - 还可以查看文件大小,确认文件没损坏:
print(os.path.getsize(file_path)) # 输出0字节说明文件是空的/损坏了
第二步:针对Python版本兼容性调整导入参数
如果文件是用Python 3的numpy保存的,Python 2.7的旧版numpy可能无法直接读取,试试添加allow_pickle=True参数(仅信任自己的文件时使用):
import numpy as np data = np.load('preflop.ea.npy', allow_pickle=True)
第三步:捕获错误信息,定位问题
如果还是无输出,用try-except捕获具体报错,避免静默失败:
import numpy as np import os file_path = 'preflop.ea.npy' try: if not os.path.exists(file_path): raise FileNotFoundError("文件不存在:{}".format(file_path)) data = np.load(file_path, allow_pickle=True) # 确认导入成功后查看内容 print("导入成功!") print("数组形状:", data.shape) print("数据类型:", data.dtype) # 预览部分内容(大数组避免全量打印) print("内容预览:", data[:5]) # 二维数组取前5行,一维数组取前5个元素 except Exception as e: print("出错原因:", str(e))
第四步:验证numpy版本
Python 2.7的numpy最高版本是1.16.6,版本太旧也可能导致读取问题,先检查版本:
import numpy as np print(np.__version__)
如果版本低于1.10,建议升级到1.16.6(Python 2.7支持的最后版本):
pip install numpy==1.16.6
内容的提问来源于stack exchange,提问作者user20503383
相关产品推荐
相关产品推荐

