我需要将2D numpy数组写入文件,包括其尺寸,以便我可以从C程序中读取它并创建相应的数组.

我已经编写了一些保存数组的简单代码,可以从C中读取,但如果我首先尝试编写数组的大小,它总会给我一个错误.

这是我的简单python代码:

1 file = open("V.bin","wb")

2 file.write(V.shape)

3 file.write(V)

4 file.close()

第二行给出错误,我也尝试过:

n1, n2 = V.shape

file.write(n1)

file.write(n2)

但它也不起作用.

我正在添加它显示的错误:

Traceback(最近一次调用最后一次):

file.write(V.shape [0])

TypeError:必须是字符串或缓冲区,而不是int

谢谢!

解决方法:

如果要将其保存为ascii,可以使用numpy.savetext.

或者(因为看起来你正在处理二进制数据),如果要保存原始数据流,可以使用ndarray.tostring来获取可以直接转储到文件的字节字符串.

这种方法的优点是您可以创建自己的文件格式.缺点是您需要创建一个字符串才能将其实际写入文件.

既然你说你在第二行遇到错误,那就是错误,因为f.write需要一个字符串.你试图将它传递给元组或整数.您可以使用struct.pack来解决此问题:

f.write(struct.pack('2i',*array.shape))

标签:python,file,binary,tuples,numpy

来源: https://codeday.me/bug/20190613/1231226.html

python将数组写入文件_python – 将numpy数组的大小写入二进制文件相关推荐

  1. python numpy数组动态写入csv文件_python - 将NumPy数组转储到csv fi中

    python - 将NumPy数组转储到csv fi中 有没有办法将NumPy数组转储到CSV文件中? 我有一个2D NumPy数组,需要以人类可读的格式转储它. 9个解决方案 588 votes n ...

  2. python数组长度查询_python – 在numpy数组中查找相同值的序列长度(运行长度编码)...

    在pylab程序中(也可能是一个matlab程序)我有一个代表距离的numpy数组:d [t]是时间t的距离(我的数据的时间跨度是len(d)时间单位) . 我感兴趣的事件是当距离低于某个阈值时,我想 ...

  3. python数组切片效率_python – 对numpy数组切片进行采样的最快方法是什么?

    我有一个3D(时间,X,Y)numpy数组,包含6个小时的时间序列几年. (比如5).我想创建一个采样时间序列,其中包含从可用记录中随机抽取的每个日历日的1个实例(每天5种可能性),如下所示. > ...

  4. python的数组批量赋值_python – 为numpy数组赋值的花式索引

    通常,当您使用数组以这种方式索引另一个数组时,numpy期望每个数组R,C等具有相同的形状.例如,假设您要从此数组中提取非零值: >>> a array([[1, 3, 0, 0], ...

  5. python数组元素复制_python的numpy数组 的复制问题?

    还是一句一句来分析吧 第一句 vector = numpy.array([5, 10, 15, 20]) 用numpy生成一个array对象 : vector 然后第二句 equal_to_ten_o ...

  6. python阈值分割_根据阈值分割numpy数组的更快方法

    X[~Z]比X[Z==0]快:In [13]: import numpy as np In [14]: X = np.random.random_integers(0, 1000, size=1000 ...

  7. python把数组写入文件_Python:将数组写入文件行

    np.savetxt写入csv文件.在这种情况下,诀窍是将两个数组/列表组合成一个复合数组,然后根据需要对其进行格式化:In [100]: mydata = np.arange(1,16).resha ...

  8. python遍历字符串数组_Python遍历numpy数组的实例

    Python遍历numpy数组的实例 在用python进行图像处理时,有时需要遍历numpy数组,下面是遍历数组的方法: [rows, cols] = num.shape for i in range ...

  9. python读取写入文件_Python读取和写入文件

    1 从文件中读取数据 1.1 读取整个文件 创建名为test的txt文本文件,添加内容如下所示: 1234567890 2345678901 3456789012 实现代码: with open('t ...

最新文章

  1. 优化内核报错及解决方法
  2. idea spring 中没有标识_Spring 优雅的国际化实现
  3. Cacheable注解使用详解
  4. 【转】vscode下编译告警“undefined reference”?三步教你如何解决
  5. concurrenthashmap_ConcurrentHashMap原理浅析
  6. python中实现switch
  7. API RSA签名颁发证书
  8. 【线上课程】4节课8小时培训,《白话区块链》作者蒋勇教你快速掌握区块链智能合约开发...
  9. npcap关闭_npcap是什么软件
  10. Chrome浏览器修改繁体为中文简体
  11. css解决打印不加粗BUG
  12. 论文笔记——ESRGAN: Enhanced Super-Resolution Generative Adversarial Networks
  13. flutter图片切换闪一下
  14. 转:稻盛和夫:在软弱的领导人手下工作,是可悲的
  15. vue 项目中 自动生成 二维码
  16. 完了!生产事故!几百万消息在消息队列里积压了几个小时!
  17. 利用字典实现大侠个人信息查询程序
  18. 浏览器被23545等网站劫持,以Chrome为例亲测有效的两个解除劫持的方法
  19. 基于python+django+vue学生作业管理系统
  20. 【云计算】云计算四个必学知识看这里

热门文章

  1. linux初始化内存盘卡住,Linux系统内存磁盘初始化技术详细解析
  2. 如何理解操作系统的不确定性_温度最低-273度,最高却能有1.4亿亿亿亿度,如何定义的?...
  3. tornado学习笔记day05-访问数据库
  4. Linux基本操作【作业】
  5. Vim的基本操作总结
  6. 关于用VS写C程序运行时出现烫字以及乱码的问题的原因
  7. 本地音频播放,使用AVFoundation.framework中的AVAudioPlayer来实现
  8. idea修改maven项目版本号
  9. shell 替换字符串的几种方法,变量替换${},sed,awk
  10. Mysql索引类型分析