Python中文件读写操作
1 txt文件
1.1 写操作
import numpy as np
def write(fileName,data):
file=open(fileName,'w')
row,col=data.shape
string=""
for i in range(row):
for j in range(col-1):
string+=str(data[i][j])+'\t'
string+=str(data[i][col-1])+'\n'
file.write(string)
file.flush()
file.close()
data=np.array([[1,1.2,3.5],[2,2.5,4.7],[3,8.4,7.6]])
write('test.txt',data)

1.2 读操作
| file.read([size]) | 读取 size 个字符,并将指针移到这次读取的最后一个字符的后面。当 size 省略时,表示读取所有内容 |
|---|---|
| file.readline() | 读取第一行的内容,并将指针移到下一行 |
| file.readlines() | 读取所有内容,并把每行的内容放到一个list里面 |
| file.seek(offset) | 指针移到 offset 处 |
import numpy as np
def read(fileName):
file=open(fileName,'r')
list=file.readlines()
file.close()
row=len(list)
col=len(list[0].split())
data=np.zeros((row,col),dtype='float32')
for i in range(row):
data[i,:]=list[i].split()
return data
data=read('test.txt')
print(data)
[[1. 1.2 3.5]
[2. 2.5 4.7]
[3. 8.4 7.6]]
2 cvs文件
2.1 cvs包
(1)写操作
import numpy as np
import csv
def write(fileName,data):
file=open(fileName,'w',newline='')
writer=csv.writer(file)
row,col=data.shape
for i in range(row):
writer.writerow(data[i,:])
file.flush()
file.close()
data=np.array([[1,1.2,3.5],[2,2.5,4.7],[3,8.4,7.6]])
write('test.csv',data)

(2)读操作
import numpy as np
import csv
def read(fileName):
file=open(fileName,'r')
reader=csv.reader(file)
data=[]
for row in reader:
data=data+[row]
file.close()
return np.array(data,dtype='float32')
data=read('test.csv')
print(data)
[[1. 1.2 3.5]
[2. 2.5 4.7]
[3. 8.4 7.6]]
2.2 pandas包
(1)写操作
import numpy as np
import pandas as pd
def write(fileName,data):
file=open(fileName,'w',newline='')
df=pd.DataFrame(data)
df.to_csv(file,header=None,index=False)
file.close()
data=np.array([[1,1.2,3.5],[2,2.5,4.7],[3,8.4,7.6]])
write('test.csv',data)
(2)读操作
import numpy as np
import pandas as pd
def read(fileName):
file=open(fileName,'r')
data=pd.read_csv(file,header=None).values.astype('float32')
file.close()
return data
data=read('test.csv')
print(data)
3 npy/npz文件
3.1 写操作
(1)npy 文件
import numpy as np
def write(fileName,data):
np.save(fileName,data)
data=np.array([[1,1.2,3.5],[2,2.5,4.7],[3,8.4,7.6]])
write('test.npy',data)
(2)npz 文件
npz 文件可以保存多个数组
import numpy as np
def write(fileName,data1,data2):
np.savez(fileName,data1=data1,data2=data2)
data1=np.array([[1,1.2,3.5],[2,2.5,4.7],[3,8.4,7.6]])
data2=np.array([1,2,3,4,5])
write('test.npz',data1,data2)

3.2 读操作
(1)npy 文件
import numpy as np
def read(fileName):
data=np.load(fileName)
return data
data=read('test.npy')
print(data)
[[1. 1.2 3.5]
[2. 2.5 4.7]
[3. 8.4 7.6]]
(2)npz 文件
import numpy as np
def read(fileName):
temp=np.load(fileName)
data1=temp['data1']
data2=temp['data2']
return data1,data2
data1,data2=read('test.npz')
print(data1)
print(data2)
[[1. 1.2 3.5]
[2. 2.5 4.7]
[3. 8.4 7.6]]
[1 2 3 4 5]
声明:本文转自Python中文件读写操作
Python中文件读写操作的更多相关文章
- python里文件读写操作
文件读写操作一种基本操作,但是里面也存在很多需要注意的问题,例如字符编码.内存缓冲.指针位置等等.如果忽视这些问题就会引起很多不必要的麻烦.简单来说,文件的读写分为几个过程: 打开文件,并定义操作文件 ...
- Python中文本文件读写操作的编码问题
Python中文本文件读写的编码问题 编码(encode): 我们输入的任何字符想要以文件(如.txt)的形式保存在计算机的硬盘上, 必须先经按照一定的规则编成计算机认识的二进制后,才能存在电脑硬盘上 ...
- 【Python】文件读写操作
Python的文件读写有点类似php的文件读写.php的文件读写已经在<[php]让记事本成为你调控变量的控制台>(点击打开链接)说过了,以下用一个小样例说明Python的文件读写. 在F ...
- 快速入门Python中文件读写IO是如何来操作外部数据的?
读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘, ...
- python中文件读写
读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘, ...
- python的文件读写操作
文件读写 本文转自廖雪峰老师的教程https://www.liaoxuefeng.com/wiki/1016959663602400/1017607179232640 读写文件是最常见的IO操作.Py ...
- Python中文件的操作
文件的操作介绍 文件打开的方法 主要有两种: no with 格式:open(file, mode='r', buffering=-1, encoding=None, errors=None, new ...
- python进阶--文件读写操作
Python读写文件 1. open 使用open打开文件后一定要记得调用 文件对象的close()方法.比如可以用try --finally语句来确保最后能关闭文件. >>>f1 ...
- python之文件读写操作笔记
对不同类的文件操作,需要调用相关的库文件,一般情况下,可以选择建立:写文件函数和读文件函数.在写文件与读文件函数中 我们可以采用:with open('文件名','w', encoding='utf ...
- python之文件读写操作(r/r+/rb/w/w+/wb/a/a+/ab)的作用
'r':只读.该文件必须已存在. 'r+':可读可写.该文件必须已存在,写为追加在文件内容末尾. 'rb':表示以二进制方式读取文件.该文件必须已存在. 'w':只写.打开即默认创建一个新文件,如果文 ...
随机推荐
- 【C++】枚举作为类函数返回值时需定义在使用之前
枚举定义在前,作为函数返回值在后 枚举定义在后,则函数返回值需用普通类型
- airsim+px4无人机仿真平台
0. 架构图 1. 主机列表 对应的ip地址与选择的系统,根据实际情况进行修改 主机IP 组件 系统 192.168.0.28 mavporxy linux-centos7.6 192.168.0.2 ...
- [转帖]如何修改Bash Shell的提示符的格式和配色
https://zhuanlan.zhihu.com/p/348416919 我们大多数使用的shell提示符,显示用户名.主机名和当前所在目录.在本文将会介绍如何定制一个自己喜欢的Bash. 了解B ...
- [转帖]数据库系列之TiDB存储引擎TiKV实现机制
TiDB存储引擎TiKV是基于RocksDB存储引擎,通过Raft分布式算法保证数据一致性.本文详细介绍了TiKV存储引擎的实现机制和原理,加深对TiDB底层存储架构的理解. 1.TiDB存储引擎Ti ...
- [转帖]docker 最新版本升级
文章目录 前言 一.卸载低版本docker 1.1 检查docker版本 1.2 删除docker 二.开始安装 2.1 安装所需依赖 2.2 设置docker yum源 2.3 查看所有可用版本 2 ...
- [转帖]Linux命令拾遗-top中的%nice是啥
https://www.cnblogs.com/codelogs/p/16060663.html 简介# 这是Linux命令拾遗系列的第八篇,本篇主要介绍top命令中nice%这个指标的含义以及进程优 ...
- github-keydb 知识
https://github.com/Snapchat/KeyDB KeyDB is now a part of Snap Inc! Check out the announcement here R ...
- elementui表格内容超出显示省略号
有些时候表格的内容太长了: 但是elementui中的表格,会进行换行处理: 此时表格的高度就会发生变化 这样就不好看,此时就要进行省略号来出来这个问题: el-table是有这个控制属性的::sho ...
- 深入浅出Java多线程(二):Java多线程类和接口
引言 大家好,我是你们的老伙计秀才!今天带来的是[深入浅出Java多线程]系列的第二篇内容:Java多线程类和接口.大家觉得有用请点赞,喜欢请关注!秀才在此谢过大家了!!! 在现代计算机系统中,多线程 ...
- Prompt learning 教学[最终篇]:Chatgpt使用场景推荐、优秀学习资料推荐、AI工具推荐
Prompt learning 教学[最终篇]:Chatgpt使用场景推荐.优秀学习资料推荐.AI工具推荐 1.chatgpt使用场景推荐 各位应该在各种平台看到不少可以尝试使用的场景,我这里仅收录: ...