python os.path 模块常用方法

时间:2022-01-15 23:03:47

 

代码:

import os

apath = os.path.abspath(__file__)       # 绝对路径
dirname = os.path.dirname(apath)
basename = os.path.basename(apath)

print("1:", apath)
print("2:", dirname)
print("3:", basename)
print("4:", os.path.split(apath))
print("5:", os.path.join(dirname, basename))

print("1:", os.path.join('aaaa', '/bbbb', 'ccccc.txt'))
print("2:", os.path.join('/aaaa', '/bbbb', 'ccccc.txt'))
print("3:", os.path.join('aaaa', './bbb', 'ccccc.txt'))

 

结果:

1: C:\Users\wes\Projects\wes.py
2: C:\Users\wes\Projects\
3: wes.py
4: ('C:\\Users\\wes\\Projects', 'wes.py')
5: C:\Users\wes\Projects\wes.py

1: /bbbb\ccccc.txt
2: /bbbb\ccccc.txt
3: aaaa\./bbb\ccccc.txt

 

结论:

  • os.path.abspath(path) :返回path规范化的绝对路径。
  • os.path.dirname(path) :返回path的目录。
  • os.path.basename(path) :返回path的文件名。
  • os.path.split(path) :返回path分割成目录和文件名的二元组。
  • os.path.join(path1, path2): 返回拼接后的路径。

 

注:

os.path.join(path1, path2):

  • 会从第一个以”/”开头的参数开始拼接,之前的参数全部丢弃。
  • 以上一种情况为先。在上一种情况确保情况下,若出现”./”开头的参数,会从”./”开头的参数的上一个参数开始拼接。