欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實用技巧之如何獲取后綴名(擴展名)或文件名

 更新時間:2024年12月31日 10:14:01   作者:高斯小哥  
這篇文章主要介紹了在Python中獲取文件名和擴展名的幾種方法,包括使用os.path.basename()函數(shù)獲取文件名,以及使用os.path.splitext()函數(shù)獲取文件名和擴展名,文中通過代碼介紹的非常詳細,需要的朋友可以參考下

一、引言 

在日常編程中,我們經(jīng)常需要處理文件,包括讀取、寫入、移動、復制等操作。而在這些操作中,獲取文件的擴展名(后綴名)或文件名是一個常見的需求。Python提供了多種方法來實現(xiàn)這一需求,本文將詳細介紹其中的幾種方法,并通過實戰(zhàn)案例來加深理解。

二、獲取文件名 

在Python中,獲取文件名通常使用os.path.basename()函數(shù)。這個函數(shù)接受一個文件路徑作為參數(shù),并返回該文件的基本名稱,即最后一個路徑分隔符后面的部分。

下面是一個簡單的示例:

import os

# 定義一個文件路徑
file_path = "/home/user/documents/example.txt"

# 使用os.path.basename()獲取文件名
file_name = os.path.basename(file_path)

print(file_name)  # 輸出: example.txt

??注意os.path.basename()函數(shù)僅返回文件名,不包括路徑或擴展名。

三、獲取文件擴展名 

在Python中,獲取文件擴展名通常使用os.path.splitext()函數(shù)。這個函數(shù)接受一個文件路徑作為參數(shù),并返回一個元組,其中第一個元素是文件的基本名稱(不包括擴展名),第二個元素是文件的擴展名(包括點號)。

下面是一個簡單的示例:

import os

# 定義一個文件路徑
file_path = "/home/user/documents/example.txt"

# 使用os.path.splitext()獲取文件名和擴展名
file_name, file_extension = os.path.splitext(file_path)

print("文件名:", file_name)  # 輸出: 文件名: /home/user/documents/example
print("擴展名:", file_extension)  # 輸出: 擴展名: .txt

??注意os.path.splitext()函數(shù)返回的擴展名包括點號(.)。如果你想要去掉點號,可以通過字符串切片操作來實現(xiàn):

file_extension = file_extension[1:]  # 去掉點號
print("去掉點號的擴展名:", file_extension)  # 輸出: 去掉點號的擴展名: txt

四、實戰(zhàn)案例

現(xiàn)在,我們來看一個實戰(zhàn)案例,演示如何在實際編程中運用獲取文件名和擴展名的知識。假設我們有一個文件夾,里面包含了多個文件,我們需要遍歷這個文件夾,打印出每個文件的文件名和擴展名。

import os

# 定義一個文件夾路徑
folder_path = "/home/user/documents"

# 遍歷文件夾中的文件
for file_name in os.listdir(folder_path):
    # 拼接文件的完整路徑
    file_path = os.path.join(folder_path, file_name)
    
    # 判斷是否為文件(排除文件夾)
    if os.path.isfile(file_path):
        # 使用os.path.splitext()獲取文件名和擴展名
        file_base_name, file_ext = os.path.splitext(file_name)
        
        # 打印文件名和擴展名
        print(f"文件名: {file_base_name}, 擴展名: {file_ext[1:]}")

這個示例代碼會遍歷指定文件夾中的所有文件,并打印出每個文件的文件名和擴展名。

??注意: 我們在打印擴展名時使用了字符串切片操作來去掉點號。

五、總結(jié)

本文介紹了在Python中獲取文件名和擴展名的幾種方法,包括使用os.path.basename()函數(shù)獲取文件名,以及使用os.path.splitext()函數(shù)獲取文件名和擴展名。通過實戰(zhàn)案例的演示,我們了解了如何在實際編程中運用這些知識。希望本文能夠幫助你更好地處理文件相關的編程任務!

附:python獲取指定文件夾下所有指定后綴文件列表

import os
# 獲取指定路徑下所有指定后綴的文件
# dir 指定路徑
# ext 指定后綴,鏈表&不需要帶點 或者不指定。例子:['xml', 'java']
def GetFileFromThisRootDirV2(target_dir, target_suffix="pxy"):
    find_res = []
    target_suffix_dot = "." + target_suffix
    walk_generator = os.walk(target_dir)
    for root_path, dirs, files in walk_generator:
        if len(files) < 1:
            continue
        for file in files:
            file_name, suffix_name = os.path.splitext(file)
            if suffix_name == target_suffix_dot:
                find_res.append(os.path.join(root_path, file))
    return find_res
    
LogList = GetFileFromThisRootDirV2("D:/temp", "log")

到此這篇關于Python實用技巧之如何獲取后綴名(擴展名)或文件名的文章就介紹到這了,更多相關Python獲取后綴名或文件名內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 使用PYTHON創(chuàng)建XML文檔

    使用PYTHON創(chuàng)建XML文檔

    今天想使用python來創(chuàng)建一個xml文件。找了下資料,發(fā)現(xiàn)資料不是很多,基本上都是使用python來解析xml文件的
    2012-03-03
  • 淺析Python中的序列化存儲的方法

    淺析Python中的序列化存儲的方法

    這篇文章主要介紹了Python中的序列化存儲的方法,序列化存儲主要針對的是內(nèi)存和硬盤之間的寫入操作,需要的朋友可以參考下
    2015-04-04
  • 舉例介紹Python中的25個隱藏特性

    舉例介紹Python中的25個隱藏特性

    這篇文章主要介紹了一些Python中的隱藏特性,從stackoverflow的人氣問題回答中整理而來,主要以代碼實際解釋說明,需要的朋友可以參考下
    2015-03-03
  • 將Python代碼打包成.exe可執(zhí)行文件的完整步驟

    將Python代碼打包成.exe可執(zhí)行文件的完整步驟

    這篇文章主要給大家介紹了關于如何將Python代碼打包成.exe可執(zhí)行文件的完整步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者使用python具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-05-05
  • Python logging日志模塊使用指南

    Python logging日志模塊使用指南

    Python 的 logging 模塊提供了標準的日志接口,可以通過它存儲各種格式的日志,日志記錄提供了一組便利功能,用于簡單的日志記錄用法,本文就給大家簡單的介紹一下Python logging日志模塊使用方法,需要的朋友可以參考下
    2023-08-08
  • python子線程退出及線程退出控制的代碼

    python子線程退出及線程退出控制的代碼

    這篇文章主要介紹了python子線程退出及線程退出控制的代碼,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-10-10
  • Python實現(xiàn)抓取頁面上鏈接的簡單爬蟲分享

    Python實現(xiàn)抓取頁面上鏈接的簡單爬蟲分享

    這篇文章主要介紹了Python實現(xiàn)抓取頁面上鏈接的簡單爬蟲分享,本文使用了一個開源模塊requests實現(xiàn)需求,需要的朋友可以參考下
    2015-01-01
  • Django 全局的static和templates的使用詳解

    Django 全局的static和templates的使用詳解

    這篇文章主要介紹了Django 全局的static和templates的使用詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-07-07
  • numpy庫ndarray多維數(shù)組的維度變換方法(reshape、resize、swapaxes、flatten)

    numpy庫ndarray多維數(shù)組的維度變換方法(reshape、resize、swapaxes、flatten)

    這篇文章主要介紹了numpy庫ndarray多維數(shù)組的維度變換方法(reshape、resize、swapaxes、flatten),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • Python線性回歸圖文實例詳解

    Python線性回歸圖文實例詳解

    用python進行線性回歸分析非常方便,有現(xiàn)成的庫可以使用比如numpy.linalog.lstsq、scipy.stats.linregress、pandas.ols等,這篇文章主要給大家介紹了關于Python線性回歸的相關資料,需要的朋友可以參考下
    2021-11-11

最新評論