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

Python根據(jù)文件路徑獲取不帶后綴名的文件名的兩種方法

 更新時間:2025年10月11日 09:31:13   作者:detayun  
在 Python 中,你可以使用os模塊或pathlib模塊來根據(jù)文件路徑獲取文件名,這兩個模塊都提供了方便的方法來解析文件路徑,下面通過代碼示例為大家詳細(xì)介紹一下,需要的朋友可以參考下

在 Python 中根據(jù)文件路徑獲取不帶后綴名的文件名,可以使用以下兩種主流方法,均支持跨平臺路徑處理(Windows/Linux/macOS):

方法一:使用 os.path 模塊(傳統(tǒng)方法)

import os

def get_filename_without_extension(file_path):
    """
    獲取不帶擴(kuò)展名的文件名
    :param file_path: 文件路徑(支持絕對路徑/相對路徑)
    :return: 不帶擴(kuò)展名的文件名
    """
    # 獲取完整的文件名(包含擴(kuò)展名)
    full_filename = os.path.basename(file_path)
    
    # 分離文件名和擴(kuò)展名
    filename, extension = os.path.splitext(full_filename)
    
    return filename

# 使用示例
if __name__ == "__main__":
    path1 = "/home/user/images/landscape.jpg"
    path2 = "C:\\Documents\\report.docx"
    path3 = "./data/.gitignore"  # 測試隱藏文件
    
    print(get_filename_without_extension(path1))  # 輸出: landscape
    print(get_filename_without_extension(path2))  # 輸出: report
    print(get_filename_without_extension(path3))  # 輸出: .gitignore

方法二:使用 pathlib 模塊(Python 3.4+ 推薦)

from pathlib import Path

def get_filename_without_extension(file_path):
    """
    獲取不帶擴(kuò)展名的文件名
    :param file_path: 文件路徑
    :return: 不帶擴(kuò)展名的文件名
    """
    # 使用.stem屬性直接獲取無擴(kuò)展名文件名
    return Path(file_path).stem

# 使用示例
if __name__ == "__main__":
    path1 = "/var/log/system.log"
    path2 = "relative/path/file.tar.gz"
    path3 = "no_extension_file"
    
    print(get_filename_without_extension(path1))  # 輸出: system
    print(get_filename_without_extension(path2))  # 輸出: file.tar
    print(get_filename_without_extension(path3))  # 輸出: no_extension_file

關(guān)鍵特性說明:

跨平臺兼容性

  • 自動處理不同操作系統(tǒng)的路徑分隔符(/\
  • 正確處理網(wǎng)絡(luò)路徑(\\server\share\file

特殊文件處理

  • 隱藏文件(如 .gitignore)保留前導(dǎo)點(diǎn)
  • 無擴(kuò)展名文件返回完整文件名
  • 多擴(kuò)展名文件(如 .tar.gz)只移除最后一個擴(kuò)展名

路徑解析細(xì)節(jié)

  • os.path.basename() 提取路徑中的文件名部分
  • os.path.splitext() 嚴(yán)格分離最后一個點(diǎn)后的擴(kuò)展名
  • pathlib.Path.stem 直接獲取無擴(kuò)展名部分

邊界情況處理

  • 空路徑返回空字符串
  • 目錄路徑返回目錄名(不含擴(kuò)展名)
  • 純擴(kuò)展名文件(如 .htaccess)返回空字符串

擴(kuò)展功能:

如果需要獲取文件名中的所有部分(如處理復(fù)合擴(kuò)展名),可以使用:

# 獲取不帶任何擴(kuò)展名的完整基礎(chǔ)名
base_name = Path(file_path).name.split('.')[0]

# 獲取所有擴(kuò)展名(適用于多擴(kuò)展名場景)
suffixes = Path(file_path).suffixes  # 返回列表 ['.tar', '.gz']

根據(jù)實(shí)際需求選擇方法:

  • 兼容舊版 Python使用 os.path 方案
  • 新項(xiàng)目推薦使用更直觀的 pathlib 方案
  • 需要精確控制擴(kuò)展名處理邏輯時可結(jié)合字符串操作

以上就是Python根據(jù)文件路徑獲取不帶后綴名的文件名的兩種方法的詳細(xì)內(nèi)容,更多關(guān)于Python文件路徑獲取文件名的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python GUI庫圖形界面開發(fā)之PyQt5控件數(shù)據(jù)拖曳Drag與Drop詳細(xì)使用方法與實(shí)例

    python GUI庫圖形界面開發(fā)之PyQt5控件數(shù)據(jù)拖曳Drag與Drop詳細(xì)使用方法與實(shí)例

    這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5控件數(shù)據(jù)拖曳Drag與Drop詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下
    2020-02-02
  • 使用wxPython和OpenCV實(shí)現(xiàn)手勢識別相機(jī)功能

    使用wxPython和OpenCV實(shí)現(xiàn)手勢識別相機(jī)功能

    在這篇博客中,我將分享一個有趣的?Python?項(xiàng)目:通過?wxPython?創(chuàng)建圖形界面,利用?OpenCV?的計(jì)算機(jī)視覺技術(shù)實(shí)現(xiàn)實(shí)時手勢識別,以下是項(xiàng)目的完整實(shí)現(xiàn)過程,包括代碼分析、使用說明和可能的優(yōu)化建議,需要的朋友可以參考下
    2025-04-04
  • Python?NLTK庫全面解析及代碼示例(NLP核心庫)

    Python?NLTK庫全面解析及代碼示例(NLP核心庫)

    NLTK是Python中用于自然語言處理(NLP)的核心庫,提供了豐富的文本處理工具、算法和語料庫,下面通過實(shí)例代碼場景分析給大家詳細(xì)介紹Python?NLTK庫全面解析,感興趣的朋友一起看看吧
    2025-06-06
  • yolov5返回坐標(biāo)的方法實(shí)例

    yolov5返回坐標(biāo)的方法實(shí)例

    這篇文章主要給大家介紹了關(guān)于yolov5返回坐標(biāo)的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2022-03-03
  • Python采集貓眼兩萬條數(shù)據(jù) 對《無名之輩》影評進(jìn)行分析

    Python采集貓眼兩萬條數(shù)據(jù) 對《無名之輩》影評進(jìn)行分析

    這篇文章主要給大家介紹了關(guān)于利用Python榮國采集兩萬條貓眼數(shù)據(jù),對《無名之輩》影評進(jìn)行分析的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • Python一鍵搞定Excel數(shù)據(jù)自動分配

    Python一鍵搞定Excel數(shù)據(jù)自動分配

    這篇文章主要為大家詳細(xì)介紹了Python一鍵搞定Excel數(shù)據(jù)自動分配的相關(guān)方法,可以輕松實(shí)現(xiàn)水果分箱,文中的示例代碼講解詳細(xì),有需要的小伙伴可以了解下
    2025-10-10
  • Python pip安裝模塊提示錯誤解決方案

    Python pip安裝模塊提示錯誤解決方案

    這篇文章主要介紹了Python pip安裝模塊提示錯誤解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05
  • 淺析Flask如何使用日志功能

    淺析Flask如何使用日志功能

    這篇文章主要為大家詳細(xì)介紹了Flask是如何使用日志功能的,文中的示例代碼講解詳細(xì),對我們深入了解Flask有一定的幫助,需要的可以參考一下
    2023-05-05
  • Python實(shí)現(xiàn)SMTP郵件發(fā)送

    Python實(shí)現(xiàn)SMTP郵件發(fā)送

    這篇文章主要介紹了基于python實(shí)現(xiàn)SMTP發(fā)送郵件教程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • Python中常用的數(shù)據(jù)結(jié)構(gòu)與算法優(yōu)化技巧指南

    Python中常用的數(shù)據(jù)結(jié)構(gòu)與算法優(yōu)化技巧指南

    Python是一種強(qiáng)大而靈活的編程語言,它提供了豐富的數(shù)據(jù)結(jié)構(gòu)和算法庫,但是在處理大規(guī)模數(shù)據(jù)或者需要高效運(yùn)行的情況下,需要考慮一些優(yōu)化技巧,本文將介紹一些Python中常用的數(shù)據(jù)結(jié)構(gòu)與算法優(yōu)化技巧,需要的朋友可以參考下
    2024-05-05

最新評論

即墨市| 嵊泗县| 正宁县| 互助| 皮山县| 桐梓县| 黄大仙区| 尉氏县| 乃东县| 读书| 铜山县| 金溪县| 武汉市| 泸溪县| 鹤峰县| 古丈县| 五莲县| 昆明市| 隆回县| 葵青区| 邻水| 定安县| 东方市| 广东省| 新余市| 西乌珠穆沁旗| 延寿县| 家居| 米林县| 科技| 静宁县| 巧家县| 图片| 安塞县| 耿马| 民勤县| 高唐县| 永登县| 浪卡子县| 宜兴市| 甘孜县|