1.函数名及其来源
os是python自带的系统模块,需要import使用
os 源于英文Operating System(操作系统)的缩写
cwd 则是源于Current Working Directory,中文意思是 当前工作目录
所以os.getcwd() 指获取当前工作目录
示例:
2.函数定义源码及其用法拆解
getcwd()方法语法格式如下:
- 参数
无
其他获取路径方法: - os.getcwd() 获得程序运行的当前目录所在位置
- sys.path0 获得当前执行的脚本的所在目录位置
- os.path.realpath
其他常用相关os函数(不必强记,用到会查找就行):
- os.system() #运行shell命令
- os.name #返回当前使用平台的代表字符,Windows用'nt'表示,Linux用'posix'表示
- os.sep #返回当前操作系统特定的路径分隔符,window和Linux通常不一样
- os.path.split(path) #将path的目录和文件名分开为元组
- os.path.join(path1,path2,...) #将path1,怕path2,...进行组合,若path2为绝对路径,则会将path1删除
- os.path.dirname(path) #返回path中的目录(文件夹部分),结果不包含''
- os.path.basename(path) #返回path中的文件名
深入理解获取路径
总之,举例来讲,os.getcwd()、sys.path[0] (sys.argv[0])和file的区别是这样的:
假设目录结构是:
然后我们在C:\test下面执行
这时sub_path.py里面与各种用法对应的值其实是:
- os.getcwd() “C:\test”,取的是起始执行目录
- sys.path[0]或sys.argv[0] “C:\test\getpath”,取的是被初始执行的脚本的所在目录
- os.path.split(os.path.realpath(file))[0] “C:\test\getpath\sub”,取的是file所在文件sub_path.py的所在目录
3.版本差异
无
4.学习建议
path的准确定位对于import包,读写文件都非常重要,
如果一时不能理解,可以在文件执行开头多加几个
print帮助我们确定那个路径是我们希望拿到的,然后将其设为全局变量就好了