关于Python读取TXT数据的信息

http://www.itjxue.com  2023-04-03 05:53  来源:未知  点击次数: 

Python 如何优雅地读取TXT文件的内容

def?loadData(path):

????data=list()

????with??open(path,'r')?as?fileReader:

????????lines?=?fileReader.readlines()??#?读取全部内容

????????for?line?in?lines:

????????????line?=?line.strip()

????????????line?=?line.split("\t")#根据数据间的分隔符切割行数据

????????????data.append(line[:])

????data=np.array(data)

????data?=?data.astype(float)

????np.random.shuffle(data)

????label=data[:,0]

????features=data[:,1:]

????print("data?loaded!")

????return?features,label-1

python读取文件—txt文件常用读写操作

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文件中的内容,那么该如何读取呢?下面我给大家分享一下。

01

首先我们新建一个txt文件,在里面写入一些内容,如下图所示

02

接下来打开运行界面,输入CMD命令,如下图所示

03

然后进入CMD界面以后我们输入python命令进入python环境,如下图所示

04

最后我们通过python中的open方法打开txt文件,然后通过read方法读取文件内容,如下图所示

python读取TXT内容后怎么计算里面数据?

不公用panda,所以直接用列表和字典来写

#最终统计后的结果,字典格式

products = {}

#读取的记录,列表格式

records = []

#读取文件的每一行,列表格式

lines = []

#读取文件,将所有内容写入列表records

with open("productinfo.txt","r") as f:

#循环读取

while True:

line = f.readline()

#读到结尾退出循环

if not line:

break

#如果每行的内容结尾有换行符就舍去

if line[-1] == '\n':

line = line[:-1]

#把每行的数据以逗号为标志分割

lines = line.split(',')

#把分割的数据追加到列表

records.append(lines)

#遍历读到的结果,将结果经过计算后写入字典products

for record in records:

#每条记录的第一项作为字典的KEY,如果这个KEY在字典中就在基础上增加值

if record[0] in products:

products[record[0]]['total_sales'] += eval(record[2])

products[record[0]]['total_money'] += eval(record[1]) * eval(record[2])

#如果这个KEY不在字典,就设置为record原值

else:

products[record[0]] = {'total_sales':eval(record[2]),'total_money':eval(record[1]) * eval(record[2])}

#排序

sales=sorted(products.items(), key=lambda x:x[1]['total_sales'])

print("最大销量商品编号:", sales[-1][0],"销量:",sales[-1][1]['total_sales'])

print("最低销量商品编号:", sales[0][0],"销量:",sales[0][1]['total_sales'])

(责任编辑:IT教学网)

更多
上一篇:没有了