<form id="dlljd"></form>
        <address id="dlljd"><address id="dlljd"><listing id="dlljd"></listing></address></address>

        <em id="dlljd"><form id="dlljd"></form></em>

          <address id="dlljd"></address>
            <noframes id="dlljd">

              聯系我們 - 廣告服務 - 聯系電話:
              您的當前位置: > 關注 > > 正文

              環球熱議:python程序接收命令行參數的方式及步驟

              來源:CSDN 時間:2023-04-06 10:15:20

              一、實驗目的


              【資料圖】

              熟練運用標準庫os和os.path中的函數,理解sys庫中argv成員用法,理解python程序接收命令行參數的方式,理解遞歸遍歷目錄樹的原理。 編寫程序,實現磁盤垃圾文件清理功能。要求程序運行時,通過命令行參數指定要清理的文件夾,然后刪除該文件夾及其子文件夾中所有擴展名為tmp、log、obj、txt 以及大小為0 的文件。

              二、實驗環境

              Python3.8

              三、實驗基本原理及步驟

              1. 查看幫助手冊,了解os.path模塊中的isdir,join,splitext,getsize方法,以及os庫中的remove,listdir方法。

              連接兩個路徑 如果路徑名引用現有目錄,則返回true 從文件名中分割出擴展名 返回文件的大小 刪除一個文件 返回包含目錄中文件名稱的列表 **sys.argv()**函數 獲取運行python文件的時候命令行參數 更詳細易懂的描述在:

              2. 編寫一個函數,該函數帶有一個參數為指定的文件夾。函數刪除該文件夾及其子文件夾中所有指定的文件類型。

              3. 程序示例輸出如下:

              運行程序之前:

              運行程序之后:

              四、實驗數據記錄(或仿真及軟件設計)

              程序及運行結果:

              # -*- coding: utf-8 -*-"""Created on Sun May 31 17:00:08 2020@author: natur"""#檢查路徑是否為文件,不是就檢查文檔下的文件是否為文檔,重復循環#編寫一個函數,該函數帶有一個參數為指定的文件夾。函數刪除該文件夾及其子文件夾中所有#指定的文件類型。from os.path import isdir,join,splitext,getsizefrom os import remove,listdirimport sysdef Delete(path):    if isdir(path)== True:        for item in listdir(path):            item = join(path,item)            if isdir(item) == False:                if splitext(item)[1] in extension or getsize(item) == 0:                    remove(item)                    print(item,"deleted")            else:                Delete(item)                extension = [".tmp", ".log", ".obj", ".txt"]path = sys.argv[1]Delete(path)

              思路: 利用 os.path.isdir()函數路徑是否為文檔,再利用 os.listdir()得到路徑下的文件列表,是就循環檢查文檔下的文件列表中是否又有文檔,如果是則迭代創建的函數;如果不是,則為文件,利用 os.path.splitext()函數分割出擴展名,判斷它的擴展名是否在我們的需求內,或者利用os.path.getsize()函數得到文件大小,判斷是否為0,如果兩個條件滿足一個,則利用 os.remove()刪除該文件,并將其路徑利用 os.path.join()函數將文件路徑以及文件結合進行輸出。文件路徑的得知主要依靠 sys.argv()[1]函數,通過命令行得到

              責任編輯:

              標簽:

              相關推薦:

              精彩放送:

              新聞聚焦
              Top 中文字幕在线观看亚洲日韩