python取文件路径

本文深入探讨了在Python中使用__file__获取文件路径时遇到的相对与绝对路径区别,并通过os.path.realpath()函数确保路径一致性。提供代码示例及详细解释,帮助开发者避免常见陷阱。

__file__为所在.py文件的完整路径,但是这个变量有时候返回相对路径,有时候返回绝对路径,因此还要用os.path.realpath()函数来处理一下。

文件路径:os.path.realpath(__file__)

目录路径:os.path.split(os.path.realpath(__file__))[0]

### 提文件路径的最末端文件名 在 Python 中,最常用的方法是使用 `os.path.basename()` 函数来提文件路径中的最末端文件名。该函数返回路径中的最后一部分,通常就是文件名。以下是一个简单的示例: ```python import os file_path = '/path/to/your/file.txt' file_name = os.path.basename(file_path) print("文件名:", file_name) ``` 这种方法适用于大多数 Python 版本,并且能够很好地处理不同操作系统的路径格式[^1]。 ### 使用字符串操作提文件名 除了使用 `os.path` 模块外,还可以通过字符串操作来提文件名。例如,可以使用 `rfind()` 方法找到路径中最后一个反斜杠 `\` 或正斜杠 `/` 的位置,然后提文件名部分。以下是一个示例: ```python s = r'C:\Users\Desktop\lesson\python\class1.py' n = s.rfind("\\") # 找到反斜杠的位置 file_name = s[n+1:] # 提文件名 print("文件名:", file_name) ``` 该方法适用于简单的字符串处理场景,但不如 `os.path.basename()` 灵活和跨平台[^5]。 ### 使用 pathlib 模块提文件名 如果你使用的是 Python 3.4 及以上版本,可以使用 `pathlib` 模块中的 `Path` 类来提文件名。这种方法更加面向对象,代码可读性更高: ```python from pathlib import Path file_path = Path('C:/Users/Desktop/lesson/python/class1.py') file_name = file_path.name print("文件名:", file_name) ``` 此方法提供了更现代的 API,并且可以与其他路径操作无缝结合[^4]。 ### 总结 Python 提供了多种方式来提文件路径中的文件名,包括 `os.path.basename()`、字符串操作和 `pathlib.Path.name`。根据 Python 版本和具体需求选择合适的方法可以提高代码的可维护性和兼容性。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值