本文主要介绍python读写数据文件的6种常用方式。

1. python内置方法

with open(r'test.xlsx') as f:a = f.read()

一般,在应用上述上下文管理器后,可以用如下三种方式进行内置方法的读写操作。

  • read() : 一次性读取整个文件内容。推荐使用read(size)方法,size越大运行时间越长
  • readline() :每次读取一行内容。内存不够时使用,一般不太用
  • readlines() :一次性读取整个文件内容,并按行返回到list,方便我们遍历

2. 内置模块(csv)

python内置了csv模块用于读写csv文件。

  • csv模块读取文件
import csv
with open('test.csv','r') as myFile:  lines=csv.reader(myFile)  for line in lines:  print (line)  
  • csv模块写入文件
import csv
with open('test.csv','w+') as myFile:      myWriter=csv.writer(myFile)  # writerrow一行一行写入myWriter.writerow([7,8,9])  myWriter.writerow([8,'h','f'])  # writerow多行写入myList=[[1,2,3],[4,5,6]]  myWriter.writerows(myList)  

3. 使用numpy库(loadtxt、load、fromfile)

  • loadtxt方法

loadtxt用来读取文本文件(包含txt、csv等)以及.gz 或.bz2格式压缩文件,前提是文件数据每一行必须要有数量相同的值。

import numpy as np
# loadtxt()中的dtype参数默认设置为float
# 这里设置为str字符串便于显示
np.loadtxt('test.csv',dtype=str)
# out:array(['1,2,3', '4,5,6', '7,8,9'], dtype='<U5')
  • load方法

load用来读取numpy专用的.npy, .npz 或者pickled持久化文件。

import numpy as np
# 先生成npy文件
np.save('test.npy', np.array([[1, 2, 3], [4, 5, 6]]))
# 使用load加载npy文件
np.load('test.npy')
'''
out:array([[1, 2, 3],[4, 5, 6]])
'''
  • fromfile方法

fromfile方法可以读取简单的文本数据或二进制数据,数据来源于tofile方法保存的二进制数据。读取数据时需要用户指定元素类型,并对数组的形状进行适当的修改。

import numpy as np
x = np.arange(9).reshape(3,3)
x.tofile('test.bin')
np.fromfile('test.bin',dtype=np.int)
# out:array([0, 1, 2, 3, 4, 5, 6, 7, 8])

4. 使用pandas库(read_csvread_excel等)

pandas是数据处理最常用的分析库之一,可以读取各种各样格式的数据文件,一般输出dataframe格式。

如:txt、csv、excel、json、剪切板、数据库、html、hdf、parquet、pickled文件、sas、stata等等

  • read_csv方法

read_csv方法用来读取csv格式文件,输出dataframe格式。

import pandas as pd
pd.read_csv('test.csv')
  • read_excel方法

读取excel文件,包括xlsx、xls、xlsm格式

import pandas as pd
pd.read_excel('test.xlsx')

read_table方法

通过对sep参数(分隔符)的控制来对任何文本文件读取

  • read_json方法

读取json格式文件

df = pd.DataFrame([['a', 'b'], ['c', 'd']],index=['row 1', 'row 2'],columns=['col 1', 'col 2'])
j = df.to_json(orient='split')
pd.read_json(j,orient='split')
  • read_html方法

读取html表格

  • read_clipboard方法

读取剪切板内容

  • read_pickle方法

读取plckled持久化文件

  • read_sql方法

读取数据库数据,连接好数据库后,传入sql语句即可

  • read_dhf方法

读取hdf5文件,适合大文件读取

  • read_parquet方法

读取parquet文件

  • read_sas方法

读取sas文件

  • read_stata方法

读取stata文件

  • read_gbq方法

读取google bigquery数据

5、读写excel文件(xlrd、xlwt、openpyxl等)

python用于读写excel文件的库有很多,除了前面提到的pandas,还有xlrd、xlwt、openpyxl、xlwings等等。

主要模块:

  • xlrd库:从excel中读取数据,支持xls、xlsx
  • xlwt库:对excel进行修改操作,不支持对xlsx格式的修改
  • xlutils库:在xlw和xlrd中,对一个已存在的文件进行修改
  • openpyxl:主要针对xlsx格式的excel进行读取和编辑
  • xlwings:对xlsx、xls、xlsm格式文件进行读写、格式修改等操作
  • xlsxwriter:用来生成excel表格,插入数据、插入图标等表格操作,不支持读取
  • Microsoft Excel API:需安装pywin32,直接与Excel进程通信,可以做任何在Excel里可以做的事情,但比较慢

6. 操作数据库(pymysql、cx_Oracle等)

python几乎支持对所有数据库的交互,连接数据库后,可以使用sql语句进行增删改查。

主要模块:

  • pymysql:用于和mysql数据库的交互
  • sqlalchemy:用于和mysql数据库的交互
  • cx_Oracle:用于和oracle数据库的交互
  • sqlite3:内置库,用于和sqlite数据库的交互
  • pymssql:用于和sql server数据库的交互
  • pymongo:用于和mongodb非关系型数据库的交互
  • redis、pyredis:用于和redis非关系型数据库的交互

python 读写数据文件的6种常用方式相关推荐

  1. python读excel 包含格式_python里读写excel等数据文件的几种常用方式

    python处理数据文件第一步是要读取数据,文件类型主要包括文本文件(csv.txt等).excel文件.数据库文件.api等. 下面整理下python有哪些方式可以读取数据文件. 1. python ...

  2. android读取excel文件_python里读写excel等数据文件的几种常用方式

    python处理数据文件第一步是要读取数据,文件类型主要包括文本文件(csv.txt等).excel文件.数据库文件.api等. 下面整理下python有哪些方式可以读取数据文件. 1. python ...

  3. python里读写excel等数据文件的6种常用方式

    下面整理下python有哪些方式可以读取数据文件. 1. python内置方法(read.readline.readlines) read() : 一次性读取整个文件内容.推荐使用read(size) ...

  4. python读csv最快方法_使用Python读写csv文件的三种方法

    Python读写csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 前言 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是 ...

  5. python读写csv文件方法总结_使用python读写CSV文件的三种方法

    Python读写csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 前言 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是 ...

  6. python定义字符串变量有两种常用方式_Python 1基础语法二(标识符、关键字、变量和字符串)...

    一.标识符 标识符就是程序员自己命名的变量名.名字需要有见名知义的效果,不要随意起名 :比如 a=1 a是个变量,a这个变量名属于标识符 1 company = '小米 2 employeeNum = ...

  7. 【IOS-COCOS2D游戏开发之十九】游戏数据存储的四种常用方式NSKEYEDARCHIVER/NSUSERDEFAULTS/WRITE写入/SQLITE3...

    本站文章均为 李华明Himi 原创,转载务必在明显处注明: 转载自[黑米GameDev街区] 原文链接: http://www.himigame.com/iphone-cocos2d/513.html ...

  8. python批量读取csv文件-使用Python读写csv文件的三种方法

    行之间无空行十分重要,如果有空行或者数据集中行末有空格,读取数据时一般会出错,引发[list index out of range]错误.PS:已经被这个错误坑过很多次! 使用python I/O写入 ...

  9. python怎么读取csv文件-使用Python读写csv文件的三种方法

    行之间无空行十分重要,如果有空行或者数据集中行末有空格,读取数据时一般会出错,引发[list index out of range]错误.PS:已经被这个错误坑过很多次! 使用python I/O写入 ...

最新文章

  1. dqn在训练过程中loss越来越大_[动手学强化学习] 2.DQN解决CartPole-v0问题
  2. 怎么用git将本地代码上传到远程服务器_git命令 将本地代码上传到远程服务器...
  3. 设计模式---4(抽象工厂模式的概念,产品组和产品等级的概念,抽象工厂模式的实现)
  4. WinPcap编程3——获取网络适配器列表
  5. create 添加async和不添加的区别_鸽子饮水添加剂肝精与电解质的区别,不能混淆也不能代替...
  6. python用map提取一个数的个十百位数_如何使用python中的map函数?
  7. 获取Access中的所有用户表(例子)
  8. Lvs+Keepalived高可用负载均衡配置
  9. ELK实践(二):收集Nginx日志
  10. python数据模型_#PYTHON#数据模型 | 学步园
  11. Android URL Scheme
  12. 电子名片怎么制作,制作一张电子名片难吗?
  13. BAT批处理脚本实例学习(三)清理系统垃圾
  14. Webpack:We noticed you‘re using the `useBuiltIns` option without declaring a core-js version.
  15. 帆软报表填报之内置数据自定义表、数据连接、服务器数据集配置
  16. 小米官网仿写部分代码+实训报告
  17. Linux 安装netcdf
  18. snipeit 安装、备份文件恢复
  19. delta波 意识(摘要)
  20. uva12657 移动盒子

热门文章

  1. 美图秀秀DBA谈MySQL运维及优化
  2. uniapp ios原生插件引入图片等资源文件方式
  3. 牛客网输入输出-python
  4. 终于有阿里p8进行了大汇总(Redis+JVM+MySQL+Spring)还有面试题解全在这里了!
  5. jquery给单选按钮赋值_jquery循环遍历radio单选按钮,并设置选中状态
  6. html a标签下载
  7. 【仙剑奇侠传4】仙剑4十大经典语录
  8. 清华邓志东:城市智能路网新基建催生路端世界级企业
  9. 《Sibelius 脚本程序设计》连载(三) - 目录
  10. 520情人节到了,作为程序猿的我用代码给女朋友送了一个礼物「可以拿去送给自己喜欢的人」