歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Python 查找某個文件夾下第幾個文件

preface:同仁遇到一個問題,需要在上萬個文件中找到第7000個文件,凌亂。查了下Python相關資料,雖說沒有完全解決,但還是有東西記錄下來。

一、對某個文件夾下遍歷文件,os.walk可破。若是多個文件夾的話,配合isdir, isfile等函數可破(參數可有可無):

for i in os.walk(os.getcwd(),topdown=True, onerror=None, followlinks=False):
    print i

os.path下判斷型的函數:
exists()  指定路徑(文件或者目錄)是否存在
isabs()  指定路徑是否為絕對路徑
isdir()  指定路徑是否存在且為一個目錄
isfile()  指定路徑是否存在且為一個文件
islink()  指定路徑是否存在且為一個符號鏈接
ismount()  指定路徑是否存在且為一個掛載點
samefile()  兩個路徑名是否指向同一個文件

這樣返回i[3]為文件名的列表,但是不知道是什麼順序,這就要根據文件信息進行排序了,看你怎麼需要,怎麼排序。
比如說以文件先後訪問時間進行排序:

for i in os.walk(os.getcwd(),topdown=False):
    for j in i[2]:
        print j,os.path.getctime(j)

在os.path下,有如下關於文件信息的函數:

  • getatime()  返回最近訪問時間  (浮點型秒數)
  • getctime()  返回文件創建時間
  • getmtime()  返回最近文件修改時間
  • getsize()  返回文件大小 (字節為單位)
  • abspath()  返回絕對路徑
  • normpath()  規范path字符串形式

得到具體的信息,剩下的就好處理了。sorted函數排序可破,重點不在這裡,暫不介紹了。

無需操作系統直接運行 Python 代碼  http://www.linuxidc.com/Linux/2015-05/117357.htm

CentOS上源碼安裝Python3.4  http://www.linuxidc.com/Linux/2015-01/111870.htm

《Python核心編程 第二版》.(Wesley J. Chun ).[高清PDF中文版] http://www.linuxidc.com/Linux/2013-06/85425.htm

《Python開發技術詳解》.( 周偉,宗傑).[高清PDF掃描版+隨書視頻+代碼] http://www.linuxidc.com/Linux/2013-11/92693.htm

Python腳本獲取Linux系統信息 http://www.linuxidc.com/Linux/2013-08/88531.htm

在Ubuntu下用Python搭建桌面算法交易研究環境 http://www.linuxidc.com/Linux/2013-11/92534.htm

Python 語言的發展簡史 http://www.linuxidc.com/Linux/2014-09/107206.htm

Python 的詳細介紹:請點這裡
Python 的下載地址:請點這裡

Copyright © Linux教程網 All Rights Reserved