讀文件
打開文件(文件需要存在)#打開文件
f = open("data.txt","r") #設置文件對象
print(f)#文件句柄
f.close() #關閉文件
#為了方便,避免忘記close掉這個文件對象,可以用下面這種方式替代
with open('data.txt',"r") as f: #設置文件對象
str = f.read() #可以是隨便對文件的操作
完全讀取文件#完全讀取文件
f = open("data.txt","r") #設置文件對象
string1 = f.read() #將txt文件的所有內容讀入到字符串string1中
f.close() #將文件關閉
print(string1)
按按行讀取整個文件方法一(刪除回車)#按行讀取整個文件方法一(刪除回車)
data = []
f = open("data.txt","r") #設置文件對象
line = f.readline()
if line !='
' and line[len(line) -1 if len(line)-1>0 else 0] == "
":#去掉換行符,也可以不去
line_ = line[:-1]
data.append(line_)
while line: #直到讀取完文件
line = f.readline() #讀取一行文件,包括換行符
if line !='' and line[len(line) -1 if len(line)-1>0 else 0] == "
":#去掉換行符,也可以不去
line_ = line[:-1]
data.append(line_)
f.close() #關閉文件
print(data)
按行讀取整個文件方法一(不刪除回車)#按行讀取整個文件方法一(不刪除回車)
data = []
f = open("data.txt","r") #設置文件對象
line = f.readline()
data.append(line)
while line: #直到讀取完文件
line = f.readline() #讀取一行文件,包括換行符
if line !='':
data.append(line)
f.close() #關閉文件
print(data)
按行讀取整個文件第二種方法#按行讀取整個文件第二種方法
data = []
for line in open("data.txt","r"): #設置文件對象并讀取每一行文件
data.append(line) #將每一行文件加入到list中
print(data )
寫文件
列表寫入文件#列表寫入文件(直接)
data = ['a','b','c']
#單層列表寫入文件
with open("data.txt","w") as f:
f.writelines(data)#列表寫入文件(加入一些東西)
data = ['a','b','c']
#單層列表寫入文件
with open("data.txt","w") as f:
for i in data:
f.write(i+'
')#二維列表寫入文件
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(''','').replace(' ',',')+'
' #將其中每一個列表規范化成字符串
print(i)
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)#將數組寫入文件
import numpy as np
data =[ [1,2,3],[4,5,6],[7,8,9]]
# 第一種方法將數組中數據寫入到data.txt文件
np.savetxt("data1.txt",data)
# 第二種方法將數組中數據寫入到data.npy文件
np.save("data",data)