Python -- h5py读、写、删

仅供学习记录分享

import h5py
import cv2

a = r'D:\project\my_script\data\test.hdf5'
img_path = r'D:\project\my_script\data\test.png'  # 已有文件

with h5py.File(a, 'w') as db:  # 写入
    img = cv2.imread(img_path)
    print(img.shape)  # shape (1024, 1920, 3)
    db.create_dataset('curr', data=[img])  # 不放入列表是这种类型的数据
    # <HDF5 dataset "curr": shape (1024, 1920, 3), type "|u1">


with h5py.File(a, 'r') as db:  # 只读
    print(db.keys())  # <KeysViewHDF5 ['curr']>, 我存放了一些图片
    print(db['curr'][0].shape)
    cv2.imshow('curr', db['curr'][0])
    cv2.waitKey()
    cv2.destroyAllWindows()

with h5py.File(a, 'a') as db:  # 读加写
    img = cv2.imread(img_path)
    db.create_dataset('next', data=[img])

with h5py.File(a, 'a') as db:  # 读加写,
    # 若为‘r'会报错KeyError: "Couldn't delete link (no write intent on file)"
    print(db.keys())
    del db['curr']
    print(db.keys())
    cv2.imshow('curr', db['next'][0])
    cv2.waitKey()
    cv2.destroyAllWindows()

随手找的一张图,仅供演示,侵权联系删除
cv2.imshow()

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值