自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

幾分鐘輕松教會您Python目錄操作

開發(fā) 后端
Python在其他部分的設(shè)計上也保持著簡約的風(fēng)格,這也讓Python這門語言成為一門易讀性、易維護性好,并且被大量用戶所歡迎的編程語言。

對于每一個Python目錄操作的從業(yè)人員,無論是開發(fā)人員、項目經(jīng)理、還是測試人員,掌握了Python這們語言會使我們的編程工作更簡單和更輕松,希望大家能夠從中吸取自己想要的東西。

參數(shù)dirname是當(dāng)前正在訪問的目錄的絕對路徑,而參數(shù)files內(nèi)的文件名則是相對于dirname的相對路徑。在此期間,當(dāng)前工作目錄并沒有改變,那就是說該腳本仍然呆在腳本啟動時刻所在的Python目錄操作中。

這就是為什么我們需要把filepath弄成帶有dirname和file的絕對路徑的原因。若要改變當(dāng)前工作目錄dirname,只要在針對每個目錄調(diào)用os.path.walk的函數(shù)中調(diào)用一下os.chdir(dirname)。

然后在該函數(shù)的末尾重新調(diào)用os.chdir(dirname)將當(dāng)前工作目錄改回原值即可,如下所示:

  1.  def ls(arg, dirname, files):  
  2.   print dirname, ’has the files’, files  
  3.   os.path.walk(os.environ[’HOME’], ls, None)  
  4.   本例中,參數(shù)arg并非必需,所以在os.path.walk調(diào)用中讓其取值為None即可。  
  5.   為了列出主目錄中所有大于1Mb的文件,可以使用下面的代碼:  
  6.   def checksize1(arg, dirname, files):  
  7.   for file in files:  
  8.   filepath = os.path.join(dirname, file)  
  9.   if os.path.isfile(filepath):  
  10.   size = os.path.getsize(filepath)  
  11.   if size > 1000000:  
  12.   sizesize_in_Mb = size/1000000.0  
  13.   arg.append((size_in_Mb, filename))  
  14.   bigfiles = []  
  15.   root = os.environ[’HOME’]  
  16.   os.path.walk(root, checksize1, bigfiles)  
  17.   for size, name in bigfiles:  
  18.   print name, ’大小為’, size, ’Mb’  

參數(shù)arg帶來了巨大的靈活性。我們可以使用它來同時存放輸入數(shù)據(jù)和生成的數(shù)據(jù)結(jié)構(gòu)。下一個范例將收集所有大于一定尺寸的帶有規(guī)定擴展名的文件的文件名和大小。輸出的結(jié)果按照文件大小排列。

當(dāng)然,如果您愿意也可以編寫具有類似功能的代碼來替代os.path.walk。下面的代碼,將針對每個文件而非每個目錄來調(diào)用的自定義函數(shù),如下所示:

  1. def checksize2(fullpath, bigfiles):  
  2.   size = os.path.getsize(fullpath)  
  3.   if size > 1000000:  
  4.   bigfiles.append(’%.2fMb %s’ % (size/1000000.0, fullpath))  
  5.   bigfiles = []  
  6.   root = os.environ[’HOME’]  
  7.   find(checksize2, root, bigfiles)  
  8.   for fileinfo in bigfiles:  
  9.   print fileinfo  

注意為列表排序的函數(shù),bigfiles[’filelist’]函數(shù)中的每個元素就是一個字典,鍵size保存著一個字符串,不過在進行比較之前我們必須將單位Mb(最后兩個字符)去掉,并將其轉(zhuǎn)換為浮點數(shù)。對于文件和目錄的處理,雖然可以通過操作系統(tǒng)命令來完成,但是Python目錄操作為了便于開發(fā)人員以編程的方式處理相關(guān)工作,提供了許多處理文件和目錄的內(nèi)置函數(shù)。

重要的是,這些函數(shù)無論是在Unix、Windows還是Macintosh平臺上,它們的使用方式是完全一致的。本文詳細解釋了這些函數(shù)的使用方法。其中,我們首先介紹了顯示目錄內(nèi)容的功能,然后描述如何測試一個文件名對應(yīng)的是一個標準文件、Python目錄操作還是鏈接。

以及提取文件大小和日期的方法。之后,我們還將介紹如何刪除文件和Python目錄操作,如何復(fù)制和刪除文件,以及怎樣將一個完整的文件路徑分解成目錄部分和文件名部分,最后,我們講解目錄的創(chuàng)建,以及如何在目錄樹中移動目錄并處理文件。

【編輯推薦】

  1. 有關(guān)Python系統(tǒng)文件進行介紹指導(dǎo)
  2. 如何正確的使用Python函數(shù)
  3. Python 構(gòu)建工具進行詳細介紹分析
  4. PythonAndroid淺析Python優(yōu)勢所在
  5. 如何使用Python模塊解析配置文件?
責(zé)任編輯:chenqingxiang 來源: CSDN
相關(guān)推薦

2010-03-01 18:13:22

Python程序

2009-12-21 13:51:54

ADO.NET處理

2010-03-04 10:01:01

Android基本組件

2010-01-12 18:20:31

Visual C++

2010-01-21 09:46:24

C++程序

2016-09-30 15:13:01

Python代碼

2009-12-30 09:58:28

mpls標簽

2009-12-17 15:15:07

VS2008快捷鍵

2010-01-06 13:39:51

擴展Jquery的Js

2010-01-21 14:51:02

C++函數(shù)指針

2009-11-26 09:28:56

VS2003打包

2013-07-02 09:58:38

ClojureClojure教程

2010-01-26 14:53:43

C++

2010-03-10 13:55:35

交換機故障

2010-01-12 10:28:58

C++復(fù)雜性

2009-12-29 09:01:46

ADSL斷線

2009-12-01 20:29:42

Visual Stud

2010-01-06 15:35:06

JSON對象

2024-12-03 15:38:14

2020-09-11 09:18:07

PythonPython包開發(fā)
點贊
收藏

51CTO技術(shù)棧公眾號