常用:
import os a = os.path.realpath(__file__) #文件绝对路径 print(a) b = os.path.dirname(__file__) #文件所在目录 print(b) c = os.path.dirname(os.path.dirname(__file__)) #文件父目录 print(c) case_path = os.path.join(b, 'test_case') # 组成一个新的测试case目录 print(case_path) f_path = os.path.join(b, 'test_case/lj.text') #组成一个新的文件绝对路径 print(f_path)
扩展:
OS方法 https://www.cnblogs.com/wuxie1989/p/5623435.html https://www.cnblogs.com/shiluoliming/p/6395331.html 返回路径类 1.os.path.abspath(path) 返回path规范化的绝对路径 >>> os.path.abspath('test.csv') 'C:\Python25\test.csv' 3.os.path.dirname(path) 返回文件所在的目录。 >>> os.path.dirname(r'F:apac-mis-test est_casecompanyimgs') 'F:\apac-mis-test\test_case\company' 4.os.path.basename(path) 返回path最后的文件名。如何path以/或结尾,那么就会返回空值。即os.path.split(path)的第二个元素。 >>> os.path.basename('c:\csv\test.csv') 'test.csv' 5.os.path.commonprefix(list) 返回list中,所有path共有的最长的路径。 >>> os.path.commonprefix(['/home/td','/home/td/ff','/home/td/fff']) '/home/td' 11.os.path.normcase(path) 在Linux和Mac平台上,该函数会原样返回path,在windows平台上会将路径中所有字符转换为小写,并将所有斜杠转换为饭斜杠。 >>> os.path.normcase(r'F:apac-mis-test est_casecompanyimgs') 'f:\apac-mis-test\test_case\companyimgs' 12.os.path.normpath(path) 规范化路径。 >>> os.path.normpath(r'F:apac-mis-test est_casecompanyimgs') 'F:\apac-mis-test\test_case\companyimgs' 分隔目录类 2.os.path.split(path) 将path分割成目录和文件名二元组返回。 >>> os.path.split('c:\csv\test.csv') ('c:\csv', 'test.csv') 10.os.path.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略。 >>> os.path.join('windows emp', 'c:\', 'csv', 'test.csv') 'c:\csv\test.csv' 12.os.path.splitdrive(path) 返回(drivername,fpath)元组 >>> os.path.splitdrive('c:\windows') ('c:', '\windows') 13.os.path.splitext(path) 分离文件名与扩展名;默认返回(fname,fextension)元组,可做分片操作 >>> os.path.splitext('c:\csv\test.csv') ('c:\csv\test', '.csv') 判断目录类 6.os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False。 7.os.path.isabs(path) 如果path是绝对路径,返回True。 8.os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False。 9.os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False。 获取信息类 14.os.path.getsize(path) 返回path的文件的大小(字节) >>> os.path.getsize('c:\boot.ini') 299L 15.os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间。 16.os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间