Python os.path
与sys.path
的区别
import os
file_path = 'data/file.txt'
absolute_path = os.path.abspath(file_path)
print(absolute_path)
运行结果:
/Users/user/Desktop/data/file.txt
1.2 os.path.basename()
– 获取文件名
os.path.basename()
函数用于获取指定路径中的文件名部分。
示例代码:
import os
file_path = '/Users/user/Desktop/data/file.txt'
base_name = os.path.basename(file_path)
print(base_name)
运行结果:
file.txt
1.3 os.path.dirname()
– 获取目录名
os.path.dirname()
函数用于获取指定路径中的目录名部分。
示例代码:
import os
file_path = '/Users/user/Desktop/data/file.txt'
dir_name = os.path.dirname(file_path)
print(dir_name)
运行结果:
/Users/user/Desktop/data
1.4 os.path.exists()
– 判断路径是否存在
os.path.exists()
函数用于判断给定的路径是否存在。
示例代码:
import os
file_path = '/Users/user/Desktop/data/file.txt'
exists = os.path.exists(file_path)
print(exists)
运行结果:
True
1.5 os.path.isfile()
– 判断是否为文件
os.path.isfile()
函数用于判断给定的路径是否是一个文件。
示例代码:
import os
file_path = '/Users/user/Desktop/data/file.txt'
is_file = os.path.isfile(file_path)
print(is_file)
运行结果:
True
1.6 os.path.isdir()
– 判断是否为目录
os.path.isdir()
函数用于判断给定的路径是否是一个目录。
示例代码:
import os
dir_path = '/Users/user/Desktop/data'
is_dir = os.path.isdir(dir_path)
print(is_dir)
运行结果:
True
1.7 os.path.join()
– 连接路径
os.path.join()
函数用于将多个路径组合成一个完整的路径。
示例代码:
import os
folder_path = '/Users/user/Desktop/data'
file_name = 'file.txt'
full_path = os.path.join(folder_path, file_name)
print(full_path)
运行结果:
/Users/user/Desktop/data/file.txt
2. sys.path
sys.path
是Python的搜索模块的路径的列表。当我们导入一个模块时,Python会按照sys.path
列表中的路径进行搜索。
下面是sys.path
的一些常见用法:
2.1 查看搜索路径
我们可以使用sys.path
来查看Python的搜索模块的路径。
示例代码:
import sys
print(sys.path)
运行结果:
['', '/usr/local/Cellar/python/3.9.0/Frameworks/Python.framework/Versions/3.9/lib/python39.zip', '/usr/local/Cellar/python/3.9.0/Frameworks/Python.framework/Versions/3.9/lib/python3.9', '/usr/local/Cellar/python/3.9.0/Frameworks/Python.framework/Versions/3.9/lib/python3.9/lib-dynload', '/usr/local/lib/python3.9/site-packages', '/usr/local/Cellar/protobuf/3.14.0/libexec/lib/python3.9/site-packages']
2.2 添加搜索路径
我们可以使用sys.path.append()
来添加新的搜索路径。
示例代码:
import sys
new_path = '/path/to/my/module'
sys.path.append(new_path)
2.3 修改搜索路径
我们还可以直接修改sys.path
列表来修改Python的搜索模块的路径。
示例代码:
import sys
sys.path[0] = '/path/to/my/module'
结论
os.path
和sys.path
是Python中用于处理文件和路径的两个重要模块。os.path
提供了一系列用于处理文件路径的函数,而sys.path
用于指定Python的搜索模块的路径。
通过对os.path
和sys.path
的了解和使用,我们可以更加方便地处理文件和路径,以及通过指定搜索路径来导入和使用自定义的模块。