最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中os.listdir() 獲取指定目錄中的文件和子目錄的列表

 更新時(shí)間:2025年04月29日 10:54:57   作者:彬彬俠  
os.listdir()是Python?os模塊中的一個(gè)函數(shù),用于獲取指定目錄中的文件和子目錄的列表,本文主要介紹了Python中os.listdir() 獲取指定目錄中的文件和子目錄的列表,感興趣的可以了解一下

os.listdir() 函數(shù)

os.listdir() 是 Python os 模塊中的一個(gè)函數(shù),用于獲取指定目錄中的文件和子目錄的列表。它返回一個(gè)包含 目錄內(nèi)容 的 列表,但不會(huì)遞歸進(jìn)入子目錄。

1. os.listdir() 語法

import os

os.listdir(path=".")

參數(shù):

  • path(可選):要列出文件和目錄的路徑,默認(rèn)為當(dāng)前目錄(.)。
  • 返回值:一個(gè) 列表,其中包含指定目錄下的 文件 和 子目錄 的 名稱(不包含路徑)。

返回類型:

  • 列表(list),其中的元素是文件和目錄的名稱(字符串)。

2. 基本用法示例

2.1 列出當(dāng)前目錄中的所有文件和文件夾

import os

# 列出當(dāng)前目錄的所有文件和子目錄
file_list = os.listdir()
print(file_list)

2.2 列出指定目錄中的所有文件和子目錄

import os

# 指定一個(gè)目錄
path = "/path/to/directory"

# 列出該目錄下的所有文件和子目錄
file_list = os.listdir(path)
print(file_list)

3. 配合 os.path 進(jìn)行篩選

3.1 區(qū)分文件和目錄

os.listdir() 只返回名稱,如果你想要區(qū)分文件和目錄,需要使用 os.path.isdir() 和 os.path.isfile()。

import os

path = "/path/to/directory"
all_items = os.listdir(path)

# 過濾出文件
files = [f for f in all_items if os.path.isfile(os.path.join(path, f))]
print("Files:", files)

# 過濾出目錄
directories = [d for d in all_items if os.path.isdir(os.path.join(path, d))]
print("Directories:", directories)

4. 與 glob 和 fnmatch 結(jié)合進(jìn)行篩選

如果你想獲取特定類型的文件(如 .txt、.jpg 等),可以結(jié)合 glob 或 fnmatch 進(jìn)行篩選。

4.1 使用 glob 獲取特定類型的文件

import glob

# 獲取當(dāng)前目錄下所有的 .txt 文件
txt_files = glob.glob("*.txt")
print(txt_files)

4.2 使用 fnmatch 進(jìn)行文件匹配

import os
import fnmatch

path = "/path/to/directory"
all_files = os.listdir(path)

# 只匹配 .txt 文件
txt_files = [f for f in all_files if fnmatch.fnmatch(f, "*.txt")]
print(txt_files)

5. 遍歷所有文件(包括子目錄)

os.listdir() 只返回 當(dāng)前目錄 下的內(nèi)容,不會(huì)遞歸進(jìn)入子目錄。如果你需要遍歷所有子目錄,可以使用 os.walk()。

import os

path = "/path/to/directory"

for root, dirs, files in os.walk(path):
    print("Current directory:", root)
    print("Subdirectories:", dirs)
    print("Files:", files)

6. 與 sorted() 結(jié)合使用

可以對(duì) os.listdir() 返回的列表進(jìn)行排序,按照名稱、大小或修改時(shí)間排序。

6.1 按文件名排序

import os

path = "/path/to/directory"
sorted_list = sorted(os.listdir(path))
print(sorted_list)

6.2 按文件大小排序

import os

path = "/path/to/directory"
files = os.listdir(path)

# 獲取按大小排序的文件列表
sorted_files = sorted(files, key=lambda f: os.path.getsize(os.path.join(path, f)))

print(sorted_files)

6.3 按修改時(shí)間排序

import os

path = "/path/to/directory"
files = os.listdir(path)

# 獲取按修改時(shí)間排序的文件列表
sorted_files = sorted(files, key=lambda f: os.path.getmtime(os.path.join(path, f)))

print(sorted_files)

7. os.scandir() vs os.listdir()

Python 3.5 以后,推薦使用 os.scandir(),它比 os.listdir() 更高效,并且可以直接獲取文件類型、大小等信息。

import os

path = "/path/to/directory"

with os.scandir(path) as entries:
    for entry in entries:
        print(f"Name: {entry.name}, Is file: {entry.is_file()}, Is directory: {entry.is_dir()}")

8. 總結(jié)

方法說明
os.listdir(path)獲取目錄下的所有文件和子目錄(不包括路徑)
os.path.isfile(path)判斷路徑是否是文件
os.path.isdir(path)判斷路徑是否是目錄
os.walk(path)遞歸遍歷目錄下的所有文件和子目錄
os.scandir(path)更高效的目錄遍歷方式
sorted(os.listdir(path))按文件名排序
glob.glob("*.txt")獲取指定類型的文件

到此這篇關(guān)于Python中os.listdir() 獲取指定目錄中的文件和子目錄的列表的文章就介紹到這了,更多相關(guān)Python os.listdir() 獲取目錄文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python之 requests的使用(一)

    Python之 requests的使用(一)

    requests是一個(gè)很實(shí)用的Python HTTP客戶端庫,爬蟲和測(cè)試服務(wù)器響應(yīng)數(shù)據(jù)時(shí)經(jīng)常會(huì)用到,requests是Python語言的第三方的庫,專門用于發(fā)送HTTP請(qǐng)求,使用起來比urllib簡(jiǎn)潔很多,這篇文章主要介紹requests的基礎(chǔ)用法
    2023-04-04
  • 用實(shí)例說明python的*args和**kwargs用法

    用實(shí)例說明python的*args和**kwargs用法

    python的*args和**kwargs如何用,看了下面的例子你就清楚了。
    2013-11-11
  • Python XML轉(zhuǎn)Json之XML2Dict的使用方法

    Python XML轉(zhuǎn)Json之XML2Dict的使用方法

    今天小編就為大家分享一篇Python XML轉(zhuǎn)Json之XML2Dict的使用方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • python 自動(dòng)化偷懶的四個(gè)實(shí)用操作

    python 自動(dòng)化偷懶的四個(gè)實(shí)用操作

    這篇文章主要介紹了python 自動(dòng)化偷懶的四個(gè)實(shí)用操作,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-04-04
  • 使用Pandas的ExcelWriter操作excel的方法

    使用Pandas的ExcelWriter操作excel的方法

    這篇文章主要介紹了使用Pandas的ExcelWriter操作excel的方法,ExcelWriter這個(gè)插件有個(gè)坑,就是已經(jīng)設(shè)置好的格式是無法更改的,因此,由pandas轉(zhuǎn)成excel的時(shí)候,必須將格式清除,尤其是表頭的格式需要大家多多注意,本文結(jié)合示例代碼講解的非常詳細(xì),需要的朋友參考下吧
    2023-11-11
  • 基于Python編寫簡(jiǎn)易版的天天跑酷游戲的示例代碼

    基于Python編寫簡(jiǎn)易版的天天跑酷游戲的示例代碼

    這篇文章主要介紹了如何利用Python編寫一個(gè)簡(jiǎn)易版的天天跑酷游戲,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,需要的可以參考一下
    2022-03-03
  • Pandas使用query()優(yōu)雅的查詢實(shí)例

    Pandas使用query()優(yōu)雅的查詢實(shí)例

    本文主要介紹了Pandas使用query()優(yōu)雅的查詢實(shí)例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Python+OpenCV讓電腦幫你玩微信跳一跳

    Python+OpenCV讓電腦幫你玩微信跳一跳

    這篇文章主要為大家詳細(xì)介紹了Python+OpenCV讓電腦幫你玩微信跳一跳,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Python heapq使用詳解及實(shí)例代碼

    Python heapq使用詳解及實(shí)例代碼

    這篇文章主要介紹了Python heapq使用詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下
    2017-01-01
  • Python實(shí)現(xiàn)yaml與json文件批量互轉(zhuǎn)

    Python實(shí)現(xiàn)yaml與json文件批量互轉(zhuǎn)

    這篇文章主要為大家詳細(xì)介紹了如何利用Python語言實(shí)現(xiàn)yaml與json文件的批量互轉(zhuǎn),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以動(dòng)手嘗試一下
    2022-07-07

最新評(píng)論

疏勒县| 仪陇县| 岳普湖县| 台安县| 莱阳市| 扶绥县| 思茅市| 和平县| 汝南县| 麻栗坡县| 罗城| 遵义市| 色达县| 邹平县| 通化县| 紫云| 兴海县| 穆棱市| 称多县| 类乌齐县| 嘉鱼县| 百色市| 宁河县| 阿瓦提县| 涿鹿县| 泾川县| 巴彦县| 贡觉县| 鹤岗市| 咸宁市| 呼和浩特市| 谷城县| 嘉荫县| 江北区| 修文县| 新营市| 永康市| 高青县| 武功县| 甘肃省| 乌什县|