python读取文件—txt文件常用读写操作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python读取文件—txt文件常用读写操作相关的知识,希望对你有一定的参考价值。
参考技术A f = open("data.txt","r") #设置文件对象f.close() #关闭文件
为了方便,避免忘记close掉这个文件对象,可以用下面这种方式替代
with open('data.txt',"r") as f: #设置文件对象
str = f.read() #可以是随便对文件的操作
f = open("data.txt","r") #设置文件对象
str = f.read() #将txt文件的所有内容读入到字符串str中
f.close() #将文件关闭
f = open("data.txt","r") #设置文件对象
line = f.readline()
line = line[:-1]
while line: #直到读取完文件
line = f.readline() #读取一行文件,包括换行符
line = line[:-1] #去掉换行符,也可以不去
f.close() #关闭文件
data = []
for line in open("data.txt","r"): #设置文件对象并读取每一行文件
data.append(line) #将每一行文件加入到list中
f = open("data.txt","r") #设置文件对象
data = f.readlines() #直接将文件中按行读到list里,效果与方法2一样
f.close() #关闭文件
可以使用pandas的.read_csv,读取文件的时候可以给每一列起名字,通过列名来调取相应列的数据。
import pandas as pd
data = pd.read_csv(" OSDO1012.txt",sep=',',header=None, names=['lat','lon','time','z']
使用data.lat就可以读取名为lat这一列的数据
data = np.loadtxt("data.txt",skiprows = 1) #将文件中数据加载到data数组里,并且跳过第一行
with open('data.txt','w') as f: #设置文件对象
f.write(str) #将字符串写入文件中
data = ['a','b','c']
单层列表写入文件
with open("data.txt","w") as f:
f.writelines(data)
每一项用空格隔开,一个列表是一行写入文件
data =[ ['a','b','c'],['a','b','c'],['a','b','c']]
with open("data.txt","w") as f: #设置文件对象
for i in data: #对于双层列表中的数据
i = str(i).strip('[').strip(']').replace(',','').replace('\'','')+'\n' #将其中每一个列表规范化成字符串
f.write(i) #写入文件
直接将每一项都写入文件
data =[ ['a','b','c'],['a','b','c'],['a','b','c']]
with open("data.txt","w") as f: #设置文件对象
for i in data: #对于双层列表中的数据
f.writelines(i) #写入文件
np.savetxt("data.txt",data) #将数组中数据写入到data.txt文件
np.save("data.txt",data) #将数组中数据写入到data.txt文件
新星计划 Python的txt文本操作-读写
Python的txt文本操作-读、写
读取txt文本
python常用的读取文件函数有三种read()、readline()、readlines()
以读取上述txt为例,看一下三者的区别
read() 一次性读全部内容
一次性读取文本中全部的内容,以字符串的形式返回结果
with open("1.txt", "r") as f: # 打开文件
data = f.read() # 读取文件
print(data)
print(type(data))
for i in data:
print(i)
readline() 读取第一行内容
只读取文本第一行的内容,以字符串的形式返回结果
with open("1.txt", "r") as f:
data = f.readline()
print(data)
print(type(data))
for i in data:
print(i)
readlines() 列表
读取文本所有内容,并且以数列的格式返回结果,一般配合for in使用
with open("1.txt", "r") as f:
data = f.readlines()
print(data)
print(type(data))
for i in data:
print(i)
readlines会读到换行符,可用如下方法去除:
with open("1.txt", "r") as f:
data = f.readlines()
print(data)
print(type(data))
for i in data:
print(i.strip())
写入txt文本
with open("2.txt", "w") as f:
f.write("这是个测试!")
# 自带文件关闭功能,不需要再写f.close()
读写模式
要了解文件读写模式,需要了解几种模式的区别,以及对应指针
-
r : 读取文件,若文件不存在则会报错
-
w: 写入文件,若文件不存在则会先创建再写入,会覆盖原文件
-
a : 写入文件,若文件不存在则会先创建再写入,但不会覆盖原文件,而是追加在文件末尾
-
rb,wb: 分别于r,w类似,但是用于读写二进制文件
-
r+ : 可读、可写,文件不存在也会报错,写操作时会覆盖
-
w+ : 可读,可写,文件不存在先创建,会覆盖
-
a+ : 可读、可写,文件不存在先创建,不会覆盖,追加在末尾
以上是关于python读取文件—txt文件常用读写操作的主要内容,如果未能解决你的问题,请参考以下文章