python 檔案遍歷 檔案讀取 檔案操作

2021-08-19 13:06:28 字數 2782 閱讀 1385

一、檔案遍歷

import os

filedir="d:" + os.sep + "data2"

for root, dirs, files in os.walk(filedir):

for dir in dirs:

print(os.path.join(root,dir))

for file in files:

print(os.path.join(root,file))  #檔案路徑

name,suffix = os.path.splitext(file)  #檔名、字尾名

注:forroot, dirs, filesinos.walk(filedir): 

print

(root) 

#當前目錄路徑

print(dirs) 

#當前路徑下所有子目錄

print(files) 

#當前路徑下所有非目錄子檔案

二、檔案按行讀取,並讀取每行的每個元素

import os

(注:如果是讀取遍歷的檔案:f = open(os.path.join(root,file),"r")

controlfile=open("d:\\dem2\\control.txt","r")  #呼叫python的open()函式開啟要讀取的檔案

lstcon=controlfile.readlines() #讀取檔案中的內容並寫入到列表

for point in lstcon: #新增乙個for 迴圈語句來迭代遍歷lstfires變數中的所有行

lstvalue=point.split(",") #呼叫split()函式並使用逗號作為分隔符,將分離後的值儲存到列表中,然後賦值給變數lstvalues

id=int(lstvalue[0])  #使用索引值來獲取

x=float(lstvalue[1])

y=float(lstvalue[2])

z=float(lstvalue[3])

controlfile.close()

三、檔案刪除

os.remove(path)

四、計算檔案大小

size=os.path.getsize(os.path.join(root,file))

size1=(size+1024)/1024.0/1024.0  #size單位為位元,化為m

五、中文輸出

import sys

print"序號","資料項名稱","資料內容"

print"序號,資料項名稱,資料內容"

type = sys.getfilesystemencoding() #python編碼轉換到系統編碼輸出

print type

六、進行行篩選

#篩選地理基準影像上的匹配點數,每張像片取100個

p2_fr=open("e:\\test\\sift\\dom\\tfw\\2dsc00261xyz.txt","r")

p2_fw=open("e:\\test\\sift\\dom\\tfw\\2dsc00261xyz1.txt","w")

p2_num=len(open("e:\\test\\sift\\dom\\tfw\\2dsc00261xyz.txt").readlines())

p2_num_hang=p2_num/100

for frp2 inp2_fr.readlines()[0:p2_num:p2_num_hang]:#輸出檔案中間隔一定數量的行#開始,結尾,間隔

p2_fw.write(str(frp2))

p2_fw.close()

p2_fr.close()

七、對檔案進行切片

import re;

p=re.compile('\n\n',re.s);

filecontent=open('files/辦公室.txt','r',encoding='utf8').read();#讀檔案內容

paralist=p.split(filecontent)#根據換行符對文字進行切片

filewriter=open('files/0.txt','a',encoding='utf8');#建立乙個寫檔案的控制代碼

for paraindexin range(len(paralist)):#遍歷切片後的文字列表

filewriter.write(paralist[paraindex]);#先將列表中第乙個元素寫入檔案中

if((paraindex+1)%3==0):#判斷是否寫夠3個切片,如果已經夠了

filewriter.close(); #關閉當前控制代碼

filewriter=open('files/'+str((paraindex+1)/3)+'.txt','a',encoding='utf8');#重新建立乙個新的控制代碼,等待寫入下乙個切片元素。注意這裡檔名的處理技巧。

filewriter.close();#關閉最後建立的那個寫檔案控制代碼

print('finished');  

八、獲得上一級目錄

1. 

parent_path = os.path.dirname(d) #獲得

d所在的目錄,即

d的父級目錄

2. 

parent_path  = os.path.dirname(parent_path) 

##獲得

parent_path

所在的目錄即

parent_path

的父級目錄

python讀取檔案並處理 python檔案處理

1 讀取txt檔案 讀取stu info.txt檔案內容,並將檔案中所有學生名稱顯示出來 f open stu info.txt r lines f.readlines print lines for line in lines print line.split 0 f.close 2 csv檔案讀...

python ftp遍歷讀取檔案

最近發現python ftp庫中實在沒有遍歷目錄下的所有檔案,網上也有很多遇到問題的,今天解決了一下。分享給大家。import ftplib def getfile path ftp.cwd path filelist 讀取目錄下的檔案列表 for f in filelist 判斷是否為目錄 if ...

python遍歷資料夾讀取檔案大小

閒來無事,寫了個小程式刪除記憶體卡中大於50m的檔案 filename itertaorfilefolder import os import os.path filepath raw input enter filepath 遍歷資料夾 三個引數 分別返回1.父目錄 2.所有資料夾名字 不含路徑 ...