python移動文件:html
需求以下:寫一個python腳本,執行過程如unix命令同樣:python
模仿unix移動文件命令,從一個路徑移動文件到另外一個路徑編程
一、若是不輸入參數,顯示幫助信息unix
二、若是輸入 -h或者 --help也顯示幫助信息code
三、輸入-i 或者 --ipath '文件夾路徑'表明須要移動的文件夾路徑orm
四、輸入-o 或者 --opath ‘文件件路徑’表明須要移動到的某個文件夾路徑視頻
# -*- coding: utf-8 -*- import sys , getopt,shutil,os ''' 需求以下: **模仿unix移動文件命令,從一個路徑移動文件到另外一個路徑** 一、若是不輸入參數,顯示幫助信息 二、若是輸入 -h或者 --help也顯示幫助信息 三、輸入-i 或者 --ipath '文件夾路徑'表明須要移動的文件夾路徑 四、輸入-o 或者 --opath ‘文件件路徑’表明須要移動到的某個文件夾路徑 ''' def main(argv): orginpath = '' targetpath = '' helpinfo = 'movefile.py -i <inputfile> -o <outputfile>' fileformat ='' try: opts,args=getopt.getopt(argv,'hi:o:f:',['ipath=','opath=','format=']) except getopt.GetoptError as e : print helpinfo sys.exit(2) for opt,arg in opts: if opt == '-h': print helpinfo sys.exit() elif opt in ('-i','--ipath'): orginpath = arg elif opt in ('-o','--opath'): targetpath = arg elif opt in ('-f','--format'): fileformat =arg if orginpath != '' and targetpath != '' and fileformat != '': print '移動的源文件爲:',orginpath print '移動到的目標文件爲:',targetpath print '移動文件的格式爲:',fileformat print '開始移動文件:' for file in os.listdir(orginpath): if file.endswith(fileformat): shutil.move(orginpath+file,targetpath) print '移動文件成功',file if __name__=="__main__": main(sys.argv[1:])
執行以下:htm
若是想查看幫助文檔,命令以下:教程
這個程序的編寫,是重點練習一下:getopt.getopt()的使用方法 固然你能夠參考python官網的教程講解 **Note that: 一、注意編寫程序的時候空格使用tab進行縮進,否則常常報一些莫名其妙的錯誤圖片
二、我本人比較愚鈍,因此對於getopt.getopt()理解了很久(2個小時的資料查詢),關於如何理解,請參考這裏,我自認爲這個比官方教程講的詳細一點。
三、另外在查資料的時候,發現一個講解比較詳細的python教程
四、談談一點心得:對於編程,只看資料(看書、看視頻)不進行實際操做,是一種懶惰。把所思所學經過實際功能的方式開發出來,纔是王道。 **
重要參考:
一、很是透徹的教程參考 二、python官網getopt教程 三、值得參考 四、例子參考