批量提取文件名保存到一個文件中

做一些彙總性的工作或者工作總結時,經常需要提取一批文件的文件名,以我爲例,在完成一本圖書的文稿工作後,最終需要統計這本書一共有哪些章、每章有多少頁碼,這時就需要將每章的文件名(不能包含文件擴展名)提取出來保存到一個文件中,以方便統計,本例就解決了我的這個問題。例如,《Python從入門到項目實踐》這本書的所有文稿放在一個文件夾中,現在要統計這本書一共包含哪些章,並存放到一個文件中。

首先使用open()方法以寫入模式打開文件,然後使用os.listdir()方法獲取指定路徑下的所有文件,並用os.path.splitext()方法對文件名和擴展名進行分離,獲取到文件名,最後使用文件對象的write()方法將文件名寫入文件中即可。代碼如下:

import os                                            # 導入os模塊

with open('D:\Test.txt', 'a') as f:                  # 以追加方式打開文件
    path=input('請輸入要提取名稱的文件所在路徑:')   # 記錄輸入的路徑
    try:
        list = os.listdir(path)                      # 遍歷選擇的文件夾
        for i in range(0, len(list)):                # 遍歷文件列表
            filename=os.path.splitext(list[i])[0]    # 提取文件名
            f.write(filename+'\n')                   # 將提取的文件名寫入文本文件
        print('文件名提取完成 ')
    except:
        print('請輸入一個有效路徑……')

 

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