python 读取txt,json和hdf5文件的实例


Posted in Python onJune 05, 2018

一.python读取txt文件

最简单的open函数:

# -*- coding: utf-8 -*-
with open("test.txt","r",encoding="gbk",errors='ignore') as f:
 print(f.read())

这里用open函数读取了一个txt文件,”encoding”表明了读取格式是“gbk”,还可以忽略错误编码。

另外,使用with语句操作文件IO是个好习惯,省去了每次打开都要close()。

二.python读取json文件

简单的test.json文件如下:

{
 "glossary": {
 "title": "example glossary",
 "GlossDiv": {
  "title": "S",
  "GlossList": {
  "GlossEntry": {
   "ID": "SGML",
   "SortAs": "SGML",
   "GlossTerm": "Standard Generalized Markup Language",
   "Acronym": "SGML",
   "Abbrev": "ISO 8879:1986",
   "GlossDef": {
   "para": "A meta-markup language, used to create markup languages such as DocBook.",
   "GlossSeeAlso": ["GML", "XML"]
   },
   "GlossSee": "markup"
  }
  }
 }
 }
}

这里需要用python的json模块处理解析:

import json
data = json.load(open('example.json'))
print(type(data))
print(data)

打印如下:

<class 'dict'>
{'glossary': {'title': 'example glossary', 'GlossDiv': {'title': 'S', 'GlossList': {'GlossEntry': {'ID': 'SGML', 'SortAs': 'SGML', 'GlossTerm': 'Standard Generalized Markup Language', 'Acronym': 'SGML', 'Abbrev': 'ISO 8879:1986', 'GlossDef': {'para': 'A meta-markup language, used to create markup languages such as DocBook.', 'GlossSeeAlso': ['GML', 'XML']}, 'GlossSee': 'markup'}}}}}

可见json.load()函数返回值是dict,json数据现在就成了一个网状的Python字典。

接下来我们就可以用标准的键检索来进行解读,比如:

print(data['glossary']['GlossDiv']['GlossList'])

打印结果如下:

{'GlossEntry': {'ID': 'SGML', 'SortAs': 'SGML', 'GlossTerm': 'Standard Generalized Markup Language', 'Acronym': 'SGML', 'Abbrev': 'ISO 8879:1986', 'GlossDef': {'para': 'A meta-markup language, used to create markup languages such as DocBook.', 'GlossSeeAlso': ['GML', 'XML']}, 'GlossSee': 'markup'}}

三.python 读取HFD5文件

HDF5 是一种层次化的格式(hierarchical format),经常用于存储复杂的科学数据。例如 MATLAB 就是用这个格式来存储数据。在存储带有关联的元数据(metadata)的复杂层次化数据的时候,这个格式非常有用,例如计算机模拟实验的运算结果等等。

与HDF5 相关的主要概念有以下几个:

文件 file: 层次化数据的容器,相当于树根('root' for tree)

组 group: 树的一个节点(node for a tree)

数据集 dataset: 数值数据的数组,可以非常非常大

属性 attribute: 提供额外信息的小块的元数据

# -*- coding: utf-8 -*-
#创建hdf5文件
import datetime
import os
import h5py
import numpy as np
imgData = np.zeros((30,3,128,256))
if not os.path.exists('test.hdf5'):
 with h5py.File('test.hdf5') as f:
 f['data'] = imgData   #将数据写入文件的主键data下面
 f['labels'] = range(100)

创建完成之后读取:

import datetime
import os
import h5py
import numpy as np
with h5py.File('test.hdf5') as f:
 print(f)
 print(f.keys)

除了上述方法,pandas还提供一个直接读取h5文件的函数:

pd.HDFStore
import datetime
import os
import h5py
import numpy as np
import pandas as pd
data = pd.HDFStore("dataset_log.h5")
print(type(data))

打印结果为:

<class 'pandas.io.pytables.HDFStore'>
Closing remaining open files:dataset_log.h5...done

以上这篇python 读取txt,json和hdf5文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中asyncore的用法实例
Sep 29 Python
python自然语言编码转换模块codecs介绍
Apr 08 Python
python通过post提交数据的方法
May 06 Python
详解用TensorFlow实现逻辑回归算法
May 02 Python
python实现人民币大写转换
Jun 20 Python
python获取磁盘号下盘符步骤详解
Jun 19 Python
Python 闭包,函数分隔作用域,nonlocal声明非局部变量操作示例
Oct 14 Python
大家都说好用的Python命令行库click的使用
Nov 07 Python
pytorch查看torch.Tensor和model是否在CUDA上的实例
Jan 03 Python
Python开发之pip安装及使用方法详解
Feb 21 Python
使用keras时input_shape的维度表示问题说明
Jun 29 Python
python面向对象版学生信息管理系统
Jun 24 Python
利用Python如何将数据写到CSV文件中
Jun 05 #Python
Python之dict(或对象)与json之间的互相转化实例
Jun 05 #Python
对pandas中to_dict的用法详解
Jun 05 #Python
pandas.DataFrame.to_json按行转json的方法
Jun 05 #Python
读取json格式为DataFrame(可转为.csv)的实例讲解
Jun 05 #Python
Python实现迭代时使用索引的方法示例
Jun 05 #Python
Numpy 将二维图像矩阵转换为一维向量的方法
Jun 05 #Python
You might like
PHP版自动生成文章摘要
2008/07/23 PHP
利用discuz实现PHP大文件上传应用实例代码
2008/11/14 PHP
PHP 操作文件的一些FAQ总结
2009/02/12 PHP
hadoop中一些常用的命令介绍
2013/06/19 PHP
PHP自毁程序(慎用)
2015/07/09 PHP
JavaScript 继承详解(一)
2009/07/13 Javascript
JQuery 1.4 中的Ajax问题
2010/01/23 Javascript
JS 密码强度验证(兼容IE,火狐,谷歌)
2010/03/15 Javascript
关于Jquery操作Cookie取值错误的解决方法
2013/08/26 Javascript
IE中的File域无法清空使用jQuery重设File域
2014/04/24 Javascript
jQuery中ajax的get()方法用法实例
2014/12/26 Javascript
javascript如何写热点图
2015/12/08 Javascript
jQuery使用$.ajax提交表单完整实例
2015/12/11 Javascript
同步文本框内容JS代码实现
2016/08/04 Javascript
vue toggle做一个点击切换class(实例讲解)
2018/03/13 Javascript
《javascript少儿编程》location术语总结
2018/05/27 Javascript
基于jQuery实现挂号平台首页源码
2020/01/06 jQuery
通过实例解析JavaScript for in及for of区别
2020/06/15 Javascript
python基础教程之对象和类的实际运用
2014/08/29 Python
进一步理解Python中的函数编程
2015/04/13 Python
Python 3.7新功能之dataclass装饰器详解
2018/04/21 Python
selenium+python自动化测试之使用webdriver操作浏览器的方法
2019/01/23 Python
python实现共轭梯度法
2019/07/03 Python
Python 类的私有属性和私有方法实例分析
2019/09/29 Python
Python可以实现栈的结构吗
2020/05/27 Python
python 利用Pyinstaller打包Web项目
2020/10/23 Python
美国香薰蜡烛品牌:PADDYWAX
2018/10/06 全球购物
日本最大化妆品和美容产品的综合口碑网站:cosme shopping
2019/08/28 全球购物
西班牙高科技产品购物网站:MejorDeseo
2019/09/08 全球购物
Roxy俄罗斯官方网站:冲浪和滑雪板的一切
2020/06/20 全球购物
财务会计人员求职的自我评价
2014/01/13 职场文书
医药公司采购员岗位职责
2015/04/03 职场文书
趣味运动会通讯稿
2015/07/18 职场文书
2016年党支部公开承诺书
2016/03/25 职场文书
利用uni-app生成微信小程序的踩坑记录
2022/04/05 Javascript
处理canvas绘制图片模糊问题
2022/05/11 Javascript