Python os.path.samefile()
Python中的os.path.samefile()方法用于检查给定的两个路径名是否指向相同的文件或目录。这是通过比较给定路径的设备号和i-node号来确定的。
该方法利用os.stat()方法获取给定路径的设备号和i-node号。因此,如果os.stat()调用在任何路径名上失败,就会引发异常。
语法:os.path.samefile(path1, path2)
参数:
path1:表示第一个文件系统路径的类路径对象。
path2:表示第二个文件系统路径的类路径对象。
类路径对象是表示路径的字符串或字节对象。
返回类型:此方法返回一个类bool的布尔值。如果两个路径引用同一个文件,此方法返回True,否则返回False。
示例1
使用os.path.samefile()方法检查给定路径是否指向相同的文件或目录。
# Python program to explain os.path.samefile() method
# importing os module
import os
# Path
path1 = "/home / ihritik / Documents / file(original).txt"
# Create a symbolic link
sym_link = "/home / ihritik / Desktop / file(shortcut).txt"
os.symlink(path1, sym_link)
# Check whether the given
# paths refer to the same
# file or directory or not
areSame = os.path.samefile(path1, sym_link)
# Print the result
print(areSame)
# In above example, sym_link is
# a symbolic link which refers
# to path1, so os.path.samefile() method
# will return True as both refer
# to same file
# First Path
path2 = "/home / ihritik / GeeksForGeeks"
# Second path
# consider the current working directory
# is "/home / ihritik"
path3 = os.path.join(os.getcwd(), "GeeksForGeeks")
# Check whether the given
# paths refer to the same
# file or directory or not
areSame = os.path.samefile(path2, path3)
# Print the result
print(areSame)
输出:
True
True