Python學習:遍歷文件作批量處理

在學習機器學習實戰的時候,發現網上下載的數據集存在問題,編碼格式不對,但是文件夾有點多操作起來不太方便,所以這裏就寫了一個腳本來批量修改txt文件的編碼格式

__author__ = 'sym'
__date__ = '19-11-26'

import os

def repair(rootDir):
    for root,dirs,files in os.walk(rootDir):
        for file in files:
            p_rootdir = os.path.join(root, file)
            print(p_rootdir)
            os.system("iconv %s -f US-ASCII -t UTF-8 -o %s" % (p_rootdir,p_rootdir))   # 這裏使用了shell命令
        for dir in dirs:
            repair(dir)


if __name__ == '__main__':
    rootdir = '/home/sym/PycharmProjects/machinelearninginaction/Ch04/email/spam'  # 指定要修改權限的目錄
    repair(rootdir)

其中for root,dirs,files in os.walk(rootDir):這一句作用是遍歷文件,各變量含義如下:

rootDir 代表需要遍歷的根文件夾
root 表示正在遍歷的文件夾的名字(根/子)
dirs 記錄正在遍歷的文件夾下的子文件夾集合
files

記錄正在遍歷的文件夾中的文件集合

找到文件後批量使用Shell命令即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章