程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

python 獲取文件夾中的全部文件

編輯:Python

在神經網絡准備訓練集的時候,經常需要從文件夾中讀取全部圖片。經常遇到的有兩種方式

1 os.listdir()

os.listdir()是列舉文件夾中所有文件名。然後通過os.path.join()函數將文件夾的地址和文件夾名稱連接起來獲得絕對地址。

import os
files=os.listdir('./T91_HR')
print(type(files))
print(files)
for i in files:
path=os.path.join('./T91_HR/'+i)
print(path)

2 glob

glob是用於匹配符合指定模式的文件集合的一種語言

 返回所有匹配的文件路徑列表。它只有一個參數pathname,定義了文件路徑匹配規則,這裡可以是絕對路徑,也可以是相對路徑

 glob.glob()

這裡返回的是一個列表

from glob import glob
import os
path=os.path.join('./T91_HR/*.png')
files=glob(path)
print(type(files))
for i in files:
print(i)

glob.iglob()

這個函數與glob.glob()函數的功能類似,也只有pathname一個參數,但是這個函數返回一個迭代器,也就是說一次只返回一個路徑,相比於glob.glob()會占用更少的內存。

from glob import iglob
import os
path=os.path.join('./T91_HR/*.png')
files=iglob(path)
print(type(files))

自然排序

from natsort import natsorted
a = ['1.png', '3.png', '10.png', '2.png']
##常規排序
a.sort()
print(a)
##自然排序
b = natsorted(a)
print(b)


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved