Python 中的 OS Path 模块
os.path 模块是一个非常广泛使用的模块,在处理系统中不同位置的文件时非常方便。它用于不同的目的,例如在 python 中合并、规范化和检索路径名。所有这些函数都只接受字节或字符串对象作为其参数。其结果特定于其运行的操作系统。
os.path.basename
此函数提供路径的最后一部分,可以是文件夹或文件名。请注意 Windows 和 Linux 中路径表示方式的区别,体现在反斜杠和正斜杠的使用上。
示例
import os # In windows fldr = os.path.basename("C:\Users\xyz\Documents\My Web Sites") print(fldr) file = os.path.basename("C:\Users\xyz\Documents\My Web Sites\intro.html") print(file) # In nix* fldr = os.path.basename("/Documents/MyWebSites") print(fldr) file = os.path.basename("/Documents/MyWebSites/music.txt") print(file)
运行上述代码得到以下结果:
输出
My Web Sites intro.html MyWebSites music.txt
os.path.dirname
此函数提供文件夹或文件所在的目录名。
示例
import os # In windows DIR = os.path.dirname("C:\Users\xyz\Documents\My Web Sites") print(DIR) # In nix* DIR = os.path.dirname("/Documents/MyWebSites") print(DIR)
运行上述代码得到以下结果:
输出
C:\Users\xyz\Documents /Documents
os.path.isfile
有时我们需要检查给定的完整路径是表示文件夹还是文件。如果文件不存在,则输出为 False。如果文件存在,则输出为 True。
示例
print(IS_FILE) IS_FILE = os.path.isfile("C:\Users\xyz\Documents\My Web Sites\intro.html") print(IS_FILE) # In nix* IS_FILE = os.path.isfile("/Documents/MyWebSites") print(IS_FILE) IS_FILE = os.path.isfile("/Documents/MyWebSites/music.txt") print(IS_FILE)
运行上述代码得到以下结果:
输出
False True False True
os.path.normpath
这是一个有趣的函数,它将通过消除额外的斜杠或根据操作系统将反斜杠更改为正斜杠来规范化给定的路径。如您在下面看到的,输出根据您运行程序的操作系统而有所不同。
示例
import os # Windows path NORM_PATH = os.path.normpath("C:/Users/Pradeep/Documents/My Web Sites") print(NORM_PATH) # Unix Path NORM_PATH = os.path.normpath("/home/ubuuser//Documents/") print(NORM_PATH)
运行上述代码得到以下结果:
输出
# Running in Windows C:\Users\Pradeep\Documents\My Web Sites \home\ubuuser\Documents # Running in Linux C:/Users/Pradeep/Documents/My Web Sites /home/ubuuser/Documents
广告