python写文件numpy_Numpy | 23 文件读写
Numpy 可以读写磁盘上的文本数据或二进制数据。
NumPy 为 ndarray 对象引入了一个简单的文件格式:npy。
npy 文件用于存储重建 ndarray 所需的数据、图形、dtype 和其他信息。
常用的 IO 函数有:
load() 和 save() 函数是读写文件数组数据的两个主要函数,默认情况下,数组是以未压缩的原始二进制格式保存在扩展名为 .npy 的文件中。
savez() 函数用于将多个数组写入文件,默认情况下,数组是以未压缩的原始二进制格式保存在扩展名为 .npz 的文件中。
loadtxt() 和 savetxt() 函数处理正常的文本文件(.txt 等)
numpy.save()
numpy.save() 函数将数组保存到以 .npy 为扩展名的文件中。
numpy.save(file, arr, allow_pickle=True, fix_imports=True)
参数说明:
file:要保存的文件,扩展名为 .npy,如果文件路径末尾没有扩展名 .npy,该扩展名会被自动加上。
arr: 要保存的数组
allow_pickle: 可选,布尔值,允许使用 Python pickles 保存对象数组,Python 中的 pickle 用于在保存到磁盘文件或从磁盘文件读取之前,对对象进行序列化和反序列化。
fix_imports: 可选,为了方便 Pyhton2 中读取 Python3 保存的数据。
importnumpy as np
a= np.array([1, 2, 3, 4, 5])
np.save('outfile.npy', a) #保存到 outfile.npy 文件上
np.save('outfile2', a) #保存到 outfile2.npy 文件上,如果文件路径末尾没有扩展名 .npy,该扩展名会被自动加上
我们可以查看文件内容:
$ cat outfile.npy
?NUMPYv{'descr':'
?NUMPYv{'descr':'
可以看出文件是乱码的,因为它们是 Numpy 专用的二进制格式后的数据。
可以使用 load() 函数来读取数据就可以正常显示了:
importnumpy as np
b= np.load('outfile.npy')print (b)
输出结果为:
[12345]
np.savez
numpy.savez() 函数将多个数组保存到以 npz 为扩展名的文件中。
numpy.savez(file, *args, **kwds)
参数说明:
file:要保存的文件,扩展名为 .npz,如果文件路径末尾没有扩展名 .npz,该扩展名会被自动加上。
args: 要保存的数组,可以使用关键字参数为数组起一个名字,非关键字参数传递的数组会自动起名为 arr_0, arr_1, … 。
kwds: 要保存的数组使用关键字名称。
importnumpy as np
a= np.array([[1, 2, 3], [4, 5, 6]])
b= np.arange(0, 1.0, 0.1)
c=np.sin(b)#c 使用了关键字参数 sin_array
np.savez("runoob.npz", a, b, sin_array=c)
r= np.load("runoob.npz")print("查看各个数组名称:",r.files)print('\n')print("数组 a:")print(r["arr_0"])print('\n')print("数组 b:")print(r["arr_1"])print('\n')print("数组 c:")print(r["sin_array"])
输出结果为:
查看各个数组名称: ['sin_array', 'arr_0', 'arr_1']
数组 a:
[[1 2 3]
[4 5 6]]
数组 b:
[0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9]
数组 c:
[0. 0.09983342 0.19866933 0.29552021 0.38941834 0.47942554
0.56464247 0.64421769 0.71735609 0.78332691]
savetxt() 和 loadtxt()
savetxt() 函数是以简单的文本文件格式存储数据,对应的使用 loadtxt() 函数来获取数据。
np.loadtxt(FILENAME, dtype=int, delimiter=' ')
np.savetxt(FILENAME, a, fmt="%d", delimiter=",")
参数 delimiter 可以指定各种分隔符、针对特定列的转换器函数、需要跳过的行数等。
importnumpy as np
a= np.array([1,2,3,4,5])
np.savetxt('out.txt',a)
b= np.loadtxt('out.txt')print(b)
输出结果为:
[1.2.3.4.5.]
使用 delimiter 参数:
importnumpy as np
a=np.arange(0,10,0.5).reshape(4,-1)
np.savetxt("out.txt",a,fmt="%d",delimiter=",") #改为保存为整数,以逗号分隔
b = np.loadtxt("out.txt",delimiter=",") #load 时也要指定为逗号分隔
print(b)
输出结果为:
[[0.0.1.1.2.][2.3.3.4.4.][5.5.6.6.7.][7.8.8.9.9.]]
python写文件numpy_Numpy | 23 文件读写相关推荐
- 用python写wps的excel文件
参考了网上的一些帖子,试了一下用python写wps的excel文件(需要windows操作系统,安装了wps的表格处理程序,安装了pywin32)--我安装的是WPS个人版,可以免费使用的. imp ...
- 使用python处理wps表格_用python写wps的excel文件 | 学步园
参考了网上的一些帖子,试了一下用python写wps的excel文件(需要windows操作系统,安装了wps的表格处理程序,安装了pywin32)--我安装的是WPS个人版,可以免费使用的. imp ...
- 内网python 仓库_GitHub - xanarry/LanTrans-desktop: 这是一个用python写的局域网传文件工具, 跨平台, 仓库中还有安卓版的工程...
文档(代码比较乱) ubuntu效果 windows效果 主程序, Lantans_desktop.py 运行时所需环境: python3.4, PyQT5 如果接收过程无法被扫描到, 请关闭防火墙 ...
- python写byte数组到文件_这可能是写过最详细的Python文件操作。网友:收藏备用(中篇)...
很多同学对于编码问题都不是很清楚,计算机常见的编码格式为: ASCII ISO-8859-1 GB2312 GBK UTF-8 UTF-16 对于Python开发中,我们一般都是采用统一的编码格式:U ...
- python把excel变成ppt_用Python写excel和ppt文件
#xlsx和 xls #一:openpyxl 只能读取xlsx 推荐使用的二种方法 #因为excle文件中可以有多个编排 故可以返回字典 #该方法只适应于xlsx文件,不能处理xls文件 ''' fr ...
- Python内置十大文件操作
日常对于批量处理文件的需求非常多,经常需要用Python写脚本调用外部文件! 本次整理Python中最常用的十大文件操作方法,直接拿来用就行啦! 01 创建和打开文件 想要操作文件需要先创建或代开指定 ...
- python写文件读文件-Python 读写文件和file对象的方法(推荐)
1.open 使用open打开文件后一定要记得调用文件对象的close()方法.比如可以用try/finally语句来确保最后能关闭文件. file_object = open('thefile.tx ...
- python 写csv加锁_Python: 对CSV文件读写 和 Md5加密
1. python 有专门的csv包,直接导入即可. import csv: 2. 直接使用普通文件的open方法 csv_reader=open("e:/python/csv_data/l ...
- python写文件读文件-python--文件流读写
在讲述fileinput模块之前,首先说一下python内置的文件API-open()函数以及与其相关的函数. 我这里主要讲讲其中四个比较重要和常用的方法,更多的方法,可以参考:菜鸟教程http:// ...
最新文章
- 改进粒子群优化算法(IWAPSO)的MATLAB源程序
- sql数组转换为字符串
- sharepoint文件夹本地同步_Windows平台下使用 Rclone 挂载 OneDrive 为本地硬盘
- 保研计算机辅助翻译,本科2013级推免生寄语
- 搭搭机器人科技活动中心怎么样_搭搭乐乐机器人怎么样?感受科技创收力量
- pytorch基于web端和C++的两种深度学习模型部署方式
- edge浏览器运行不流畅怎么办 提高edge浏览器速度的方法
- linux连接mysql_主机Navicat连接linux(虚拟机)的mysql数据库
- MongoDB(Golang)常用复合查询
- 【多媒体封装格式详解】---MKV【3】完
- 各种排序是否稳定,不稳定是为什么
- java 压力测试_记一次完整的java项目压力测试
- java对人物画像分级_用户画像,该怎么分析?
- 微信公众号支付、支付查询、退款、退款查询、转账到零钱银行卡、转账查询接口整合(V2)
- 华为拍摄月亮专利公布: 多次曝光获取月亮清晰轮廓
- Python处理unicode字符
- 好用的手机投屏电脑软件
- 华为P50用鸿蒙系统吗,华为P50Pro+采用鸿蒙系统么-搭载鸿蒙OS么
- 机械手爪部位触觉感应系统
- Pycharm社区版下载与安装
热门文章
- 心流状态---人们做事时内心的一种状态
- 海康威视(HIKViSION)2009年校园招聘笔试题-杭州(1)
- 面试应该问公司什么问题
- 计算机游戏13关gongl,密室逃脱4之恐怖电影院第13关怎么过 第13关通关攻略
- 编写python程序按照单利方式计算理财产品收益
- Cocos2dx lua 2.xpk 3.x偏Mac OS
- 网页链接跳转qq聊天界面以及QQ群是什么实现的
- 618年中大促八大情景话术大全(赶紧收藏)
- python编程培训多少钱-编程培训多少钱,python编程培训多少钱
- 【元胞自动机】基于元胞自动机实现高速公路收费站交通流问题附matlab代码