日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

python读取坐标文本文件_Python 实现文件读写、坐标寻址、查找替换功能

發(fā)布時間:2025/3/15 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python读取坐标文本文件_Python 实现文件读写、坐标寻址、查找替换功能 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

讀文件

打開文件(文件需要存在)

#打開文件

f = open("data.txt","r") #設(shè)置文件對象

print(f)#文件句柄

f.close() #關(guān)閉文件

#為了方便,避免忘記close掉這個文件對象,可以用下面這種方式替代

with open('data.txt',"r") as f: #設(shè)置文件對象

str = f.read() #可以是隨便對文件的操作

完全讀取文件

#完全讀取文件

f = open("data.txt","r") #設(shè)置文件對象

string1 = f.read() #將txt文件的所有內(nèi)容讀入到字符串string1中

f.close() #將文件關(guān)閉

print(string1)

按按行讀取整個文件方法一(刪除回車)

#按行讀取整個文件方法一(刪除回車)

data = []

f = open("data.txt","r") #設(shè)置文件對象

line = f.readline()

if line !='\n' and line[len(line) -1 if len(line)-1>0 else 0] == "\n":#去掉換行符,也可以不去

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] == "\n":#去掉換行符,也可以不去

line_ = line[:-1]

data.append(line_)

f.close() #關(guān)閉文件

print(data)

按行讀取整個文件方法一(不刪除回車)

#按行讀取整個文件方法一(不刪除回車)

data = []

f = open("data.txt","r") #設(shè)置文件對象

line = f.readline()

data.append(line)

while line: #直到讀取完文件

line = f.readline() #讀取一行文件,包括換行符

if line !='':

data.append(line)

f.close() #關(guān)閉文件

print(data)

按行讀取整個文件第二種方法

#按行讀取整個文件第二種方法

data = []

for line in open("data.txt","r"): #設(shè)置文件對象并讀取每一行文件

data.append(line) #將每一行文件加入到list中

print(data )

按行讀取整個文件第三種方法

f = open("data.txt","r") #設(shè)置文件對象

data = f.readlines() #直接將文件中按行讀到list里,效果與方法2一樣

f.close() #關(guān)閉文件

print(data)

將文件讀入numpy數(shù)組中

#將文件讀入數(shù)組中

import numpy as np

data = np.loadtxt("data.txt") #將文件中數(shù)據(jù)加載到data數(shù)組里

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+'\r\n')

#二維列表寫入文件

data =[ ['a','b','c'],['a','b','c'],['a','b','c']]

with open("data.txt","w") as f: #設(shè)置文件對象

for i in data:

i = str(i).strip('[').strip(']').replace(',','').replace('\'','').replace(' ',',')+'\r\n' #將其中每一個列表規(guī)范化成字符串

print(i)

f.write(i)

#第二種方法,直接將每一項都寫入文件

data =[ ['a','b','c'],['a','b','c'],['a','b','c']]

with open("data.txt","w") as f: #設(shè)置文件對象

for i in data: #對于雙層列表中的數(shù)據(jù)

f.writelines(i)

#將數(shù)組寫入文件

import numpy as np

data =[ [1,2,3],[4,5,6],[7,8,9]]

# 第一種方法將數(shù)組中數(shù)據(jù)寫入到data.txt文件

np.savetxt("data1.txt",data)

# 第二種方法將數(shù)組中數(shù)據(jù)寫入到data.npy文件

np.save("data",data)

import numpy as np

filename = 'data.txt' # txt文件和當(dāng)前腳本在同一目錄下,所以不用寫具體路徑

dataele_list = []

with open(filename, 'r') as f:

while True:

lines = f.readline() # 整行讀取數(shù)據(jù)

if not lines:

break

dataele_tmp = [float(i) for i in lines.split()] # 將整行數(shù)據(jù)分割處理,如果分割符是空格,括號里就不用傳入?yún)?shù),如果是逗號, 則傳入‘,'字符。

dataele_list.append(dataele_tmp) # 添加新讀取的數(shù)據(jù)

dataele_np = np.array(dataele_list) # 將數(shù)據(jù)從list類型轉(zhuǎn)換為array類型。

print(dataele_np)

非替換寫入

#非替換寫入

#r+ 模式的指針默認(rèn)是在文件的開頭

# 如果直接寫入,則會覆蓋源文件,通過read() 讀取文件后,指針會移到文件的末尾,再寫入數(shù)據(jù)就不會有問題了。

# 這里也可以使用a 模式

f2 = open('data.txt','r+')

f2.read()

f2.write('\r\nhello boy!')

f2.close()

#非替換寫入

f2 = open('data.txt','a')

f2.write('\r\nhello fff!')

f2.close()

文件坐標(biāo)插入讀取

# 在開始使用open打開文件時候,將打開方式從r,換成rb即可 才可以使用seek移動

f = open('data.txt','rb')

#f.tell() #獲取指針位置

print("初始位置",f.tell())

# 開頭位置偏離3位置

f.seek(3,0)

print("開頭位置偏離3位置",f.tell())

print("==",f.readline(),"==")

print("讀取一行后位置",f.tell())

# 當(dāng)前位置偏離5位置

f.seek(5,1)

print("當(dāng)前位置偏離5位置",f.tell())

print("==",f.readline(),"==")

print("讀取一行后位置",f.tell())

# 結(jié)尾偏離5位置

f = open('data.txt','rb')

f.seek(0,2)

print("結(jié)尾偏離0位置",f.tell())

print("==",f.readline(),"==")

print("讀取一行后位置",f.tell())

f.seek(3,2)

print("結(jié)尾偏離3位置",f.tell())

print("==",f.readline(),"==")

print("讀取一行后位置",f.tell())

內(nèi)容查找

# 內(nèi)容查找

import re

f = open('data.txt')

source = f.read()

f.close()

r = 'www'

s = len(re.findall(r,source))

print(s)

import re

f = open("data.txt",'r')

count = 0

for s in f.readlines():

li = re.findall("www",s)

if len(li)>0:

count = count + len(li)

print ("Search",count, "www")

f.close()

替換

#替換

f1 = open('data.txt','r')

f2 = open('data2.txt','w')

for s in f1.readlines():

f2.write(s.replace('www','w')+'\r\n')

f1.close()

f2.close()

#排序 去除空行 注釋

f = open('data.txt')

result = list()

for line in f.readlines(): # 逐行讀取數(shù)據(jù)

line = line.strip() #去掉每行頭尾空白

if not len(line) or line.startswith('#'): # 判斷是否是空行或注釋行

continue #是的話,跳過不處理

result.append(line) #保存

f.close()

result.sort() #排序結(jié)果

print(result)

f = open('data2.txt','w')

for line in result:

f.write(line+'\r\n')

總結(jié)

以上所述是小編給大家介紹的Python 實(shí)現(xiàn)文件讀寫、坐標(biāo)尋址、查找替換功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

總結(jié)

以上是生活随笔為你收集整理的python读取坐标文本文件_Python 实现文件读写、坐标寻址、查找替换功能的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。