迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

如何在 Python 中从路径获取文件名

作者:迹忆客 最近更新:2023/12/17 浏览次数:

本教程介绍了如何在 Python 中从路径中获取文件名。它还列出了一些示例代码,以进一步演示与特定操作系统相关的概念。


使用 ntpath 库从路径中获取文件名

定义路径的方式可以是不同的。在 Windows 中,文件的路径可以使用反斜线或正斜线作为路径分隔符。因此,ntpath 模块将适用于所有平台上的所有路径。

ntpath 库支持一个函数是 basename。这个函数传递一个 path,执行后,ntpath.basename(path) 从给定的 path 中返回文件名。使用该方法的基本例子如下所示。

import ntpath

print(ntpath.basename("usr/temp/new/sample"))

输出:

sample

使用 ntpath.basename() 从路径中获取文件名

这个库同样适用于 Linux。然而,在 Linux 中,文件名可能包含反斜杠。所以在 Linux 中,r'usr/xyz\python'总是指 usr 文件夹中的 xyz\python 文件。

import ntpath

print(ntpath.basename("r'usr/xyz\python'"))

输出:

xyz\python

它指的是 Windows 中 usr 文件夹下 xyz 子文件夹中的文件名 python。当一个路径中同时使用后斜杠和前斜杠时,我们应该知道我们使用的是哪个平台,否则,你可能无法正确解释路径。

还有一种方法可以从路径中获取文件名,即 os.path.basename()


Python 使用 os.path.basename() 从路径中获取文件名

你也可以使用 os.path 库提供的一个函数从路径中获取文件名。这个函数是 basename,用来获取文件名。

basenamepath 为参数,返回 filename

以下是代码示例。

import os

print(os.path.basename("usr/temp/eng"))

输出:

eng

如果系统是 POSIX,并且传递给 os.path.basename() 的是一个包含双斜线的 windows 风格的路径,那么输出将是给出的完整路径。

# in Linux
import os

print(os.path.basename("E:\\aws\\temp.jpg"))

输出:

E:\\aws\\temp.jpg

Python 使用 os.path.split() 从路径获取文件名

如果需要单独的头和尾,可以使用 os.path.split() 方法。该方法以 path 为参数,返回路径的 headtail

下面是一个示例代码。

import os

head, tail = os.path.split("/Users/xyz/Downloads")
print(head)
print(tail)

输出:

/Users/xyz
Downloads

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

在 Python 中导入 OpenSSL

发布时间:2023/12/20 浏览次数:147 分类:Python

本教程演示了如何在 Python 中使用 OpenSSL。我们旨在学习如何在 Python 中使用 OpenSSL。安装 OpenSSL Python 库

在 Python 中获取绝对路径

发布时间:2023/12/20 浏览次数:94 分类:Python

它演示了如何在 Python 中获取一个文件的绝对路径。使用 abspath() 来获取 Python 中的绝对路径

在 Python 中获取父目录

发布时间:2023/12/20 浏览次数:166 分类:Python

本教程演示了如何在 Python 中获取一个路径的父目录。本教程将讲解在 Python 中获取一个路径的父目录的各种方法。父目录是指高于或高于给定目录或文件的目录。

在 Python 中从路径中获取目录

发布时间:2023/12/20 浏览次数:199 分类:Python

本教程演示如何在 Python 中提取文件路径的一部分。文件路径是表示文件在系统或目录中的位置的唯一字符串。有时,你可能必须从文件路径中检索或提取任何部分或块。

在 Python 中将循环步长递增 2

发布时间:2023/12/20 浏览次数:97 分类:Python

在 Python 中,循环可以使步长为 2 的值递增。为此目的,使用了诸如 for loop,range()和 slicing 之类的不同方法。

Python 中的一行中的 for 循环

发布时间:2023/12/20 浏览次数:115 分类:Python

本教程演示了如何在 Python 中实现一行中的 for 循环。在 Python 中,一行 for 循环有多种形式;一个简单的 for 循环可以遍历可迭代对象或序列。另一个可以是简单的列表推导,也可以是带有 if

Python 中的 do...while 循环

发布时间:2023/12/20 浏览次数:108 分类:Python

本教程演示了如何在 Python 中模拟 do-while 循环。默认情况下,Python 中不存在 do-while 循环,但是我们可以使用 while 循环生成一些代码,以使某些事情可以充当 do-while 循环。

Python 中的并行 for 循环

发布时间:2023/12/20 浏览次数:173 分类:Python

本教程演示如何在 Python 中执行并行处理。在 Python 中使用 multiprocessing 模块并行化 for 循环

在 Python 中是否存在 goto 语句

发布时间:2023/12/20 浏览次数:148 分类:Python

本文为你提供了 Python 中是否存在 goto 语句的答案。本文为你提供了 Python 中是否存在 goto 语句的答案。基本上,Python 不支持 goto 语句。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便