abstrait:需 求 分 析1、讀取指定目錄下的所有文件2、讀取指定文件,輸出文件內(nèi)容3、創(chuàng)建一個文件并保存到指定目錄實 現(xiàn) 過 程 Python寫代碼簡潔高效,實現(xiàn)以上功能僅用了40行左右的代碼~ 昨天用Java寫了一個寫入、創(chuàng)建、復(fù)制、重命名文件要將近60行代碼; 不過簡潔的代價是犧牲了一點點運行速度,但隨著硬件性能的提升,運行速度的差異會越來越小,直到人類無法察覺~#-*- coding:&
需 求 分 析
1、讀取指定目錄下的所有文件
2、讀取指定文件,輸出文件內(nèi)容
3、創(chuàng)建一個文件并保存到指定目錄
實 現(xiàn) 過 程
Python寫代碼簡潔高效,實現(xiàn)以上功能僅用了40行左右的代碼~ 昨天用Java寫了一個寫入、創(chuàng)建、復(fù)制、重命名文件要將近60行代碼;
不過簡潔的代價是犧牲了一點點運行速度,但隨著硬件性能的提升,運行速度的差異會越來越小,直到人類無法察覺~
#-*- coding: UTF-8 -*- ''' 1、讀取指定目錄下的所有文件 2、讀取指定文件,輸出文件內(nèi)容 3、創(chuàng)建一個文件并保存到指定目錄 ''' import os # 遍歷指定目錄,顯示目錄下的所有文件名 def eachFile(filepath): pathDir = os.listdir(filepath) for allDir in pathDir: child = os.path.join('%s%s' % (filepath, allDir)) print child.decode('gbk') # .decode('gbk')是解決中文顯示亂碼問題 # 讀取文件內(nèi)容并打印 def readFile(filename): fopen = open(filename, 'r') # r 代表read for eachLine in fopen: print "讀取到得內(nèi)容如下:",eachLine fopen.close() # 輸入多行文字,寫入指定文件并保存到指定文件夾 def writeFile(filename): fopen = open(filename, 'w') print "\r請任意輸入多行文字"," ( 輸入 .號回車保存)" while True: aLine = raw_input() if aLine != ".": fopen.write('%s%s' % (aLine, os.linesep)) else: print "文件已保存!" break fopen.close() if __name__ == '__main__': filePath = "D:\\FileDemo\\Java\\myJava.txt" filePathI = "D:\\FileDemo\\Python\\pt.py" filePathC = "C:\\" eachFile(filePathC) readFile(filePath) writeFile(filePathI)
工欲善其事
最近嘗試了幾個常見的Python IDE,發(fā)現(xiàn)Subline tx2對中文的支持不好, NotePad++ 代碼自定義顏色不方便。
用來用去還是Eclipse最順手,裝上PyDev插件之后,編寫Python代碼很方便;
更多關(guān)于Python遍歷文件夾和讀寫文件的實現(xiàn)代碼請關(guān)注PHP中文網(wǎng)(ipnx.cn)其他文章!