如何使用 Python 操作路径名?

pythonserver side programmingprogramming

在本文中,我们将学习使用 Python 操作路径名。

下面提到了一些使用的不同示例 -

  • 从文件路径获取主文件名

  • 从文件路径获取目录名

  • 将路径组件连接在一起

  • 扩展用户的主目录

  • 从文件路径中分离文件扩展名

算法(步骤)

以下是执行所需任务要遵循的算法/步骤。 −

  • 使用 import 关键字导入 os 模块。

  • 创建一个变量来存储 输入文件路径。

  • 使用 os 模块的 basename() 函数(从给定的文件路径返回基本名称)获取输入文件路径的最后一个组件(主文件名)并打印。

从文件路径获取主文件名

示例

以下程序使用 os.path.basename() 函数从输入文件返回主文件名 −

# 导入 o​​s 模块
import os

# 文件的输入路径
inputFilepath = 'C:/Users/cirus/Desktop/tutorialsPoint.pdf'

# 打印给定的输入路径
print("给定的输入路径是:",inputFilepath)

# 获取输入文件路径的最后一个组件(主文件名)
print("给定路径的基本名称是:",os.path.basename(inputFilepath))

输出

执行时,上述程序将生成以下输出 -

给定的输入路径是:C:/Users/cirus/Desktop/tutorialsPoint.pdf
给定路径的基本名称是:tutorialsPoint.pdf

从文件路径获取目录名称

使用 os.path.dirname() 函数(从给定的文件路径返回目录名称)通过传递输入来获取给定输入文件路径的目录/文件夹文件路径作为其参数。

示例

以下程序使用 os.path.dirname() 函数从输入文件路径返回目录名称 −

# 导入 o​​s 模块
import os

# 文件的输入路径
inputFilepath = 'C:/Users/cirus/Desktop/tutorialsPoint.pdf'
# 打印给定的输入路径
print("Give Input Path is:",inputFilepath)

# 使用 dirname() 函数从输入文件路径获取目录/文件夹路径
print("Directory path of the given path is: ",os.path.dirname(inputFilepath))

输出

执行时,上述程序将生成以下输出 -

给定输入路径为:C:/Users/cirus/Desktop/tutorialsPoint.pdf
给定路径的目录路径为:C:/Users/cirus/Desktop

将路径组件连接在一起

os.path.join() 函数

Python 的 os.path.join() 函数可有效地连接一个或多个路径组件。除了最后一个路径组件外,此方法通过在每个非空部分后放置一个目录分隔符 ('/') 来连接不同的路径组件。在最后一个要连接的路径组件的末尾添加目录分隔符('/')为空。

如果路径组件代表绝对路径,则删除所有先前连接的组件,然后从绝对路径组件开始连接。

示例

以下程序使用 os.path.join() 函数将给定的路径组件与基本名称连接起来 -

# 导入 o​​s 模块
import os

# 文件的输入路径
inputFilepath = 'C:/Users/cirus/Desktop/kohli.pdf'
# 打印给定的输入路径
print("Give Input Path is:",inputFilepath)

# 将组件连接到输入文件路径的主文件名
print("将给定的路径连接到输入路径:\n",
os.path.join('tutorials', 'python', os.path.basename(inputFilepath)))

输出

执行时,上述程序将生成以下输出 -

给定输入路径为:C:/Users/cirus/Desktop/kohli.pdf
将给定路径加入输入路径:
tutorials/python/kohli.pdf

扩展用户的主目录

os.path.expanduser() 函数

Python 函数 os.path.expanduser() 将指定路径中的初始路径 ~(波浪符号) 或 ~ user 扩展为用户的主目录。

语法

以下是该函数的语法。

os.path.expanduser(path)

示例

以下程序使用 expanduser() 函数返回用户主目录的扩展路径 -

# 导入 o​​s 模块
import os
# 文件的输入路径
inputFilepath = '~/Users/cirus'
# 打印给定的输入路径
print("Give Input Path is:",inputFilepath)

# 扩展用户的主目录
print("Expanded Path is:\n",os.path.expanduser(inputFilepath))

输出

执行时,上述程序将生成以下输出 -

Give Input Path is: ~/Users/cirus
Expanded Path is:
/root/Users/cirus

从文件路径中分离文件扩展名

os.path.splitext() 函数 − 将文件路径名分离为根和扩展名对。这里的根是除文件扩展名之外的所有内容。

如果给定的文件路径没有扩展名,则扩展名是空的。如果给定路径以句点 ('.') 开头,则将被忽略。

语法

以下是该函数的语法。

os.path.splitext(path)

使用 os.path.splitext() 函数从输入文件路径中分离文件路径和文件扩展名。

示例

以下程序使用 os.path.splitext() 函数从输入文件路径中分离主文件路径和文件扩展名 −

# 导入 o​​s 模块
import os
# 输入文件路径
inputFilepath ='C:/Users/cirus/Desktop/tutorialsPoint.pdf'
# 打印给定的输入路径
print("输入路径为:",inputFilepath)

# 从输入文件路径中分割文件路径和文件扩展名
# 使用 splitext() 函数
print("按扩展名分割给定路径:\n",os.path.splitext(inputFilepath))

输出

执行时,上述程序将生成以下输出 -

输入路径为:C:/Users/cirus/Desktop/tutorialsPoint.pdf
按扩展名分割给定路径:
('C:/Users/cirus/Desktop/tutorialsPoint', '.pdf')

结论

在本文中,我们学习了如何使用 OS 模块修改路径名。从文件路径中,我们学习了如何提取主(基础)文件名和目录名。我们学习了如何组合路径的组件名称和路径。讨论了用户主目录扩展过程。最后,我们弄清楚了如何将文件路径与扩展名分开。


相关文章