Python中,很多时候我们需要使用各种路径,方便我们移植。
获取路径方式
(1) 获取执行脚本当前路径,(这也是比较大众的获取方式)
#简洁的方法 import os path = os.getcwd() print path #复杂点的方法 def current_path(): path=os.path.realpath(sys.path[0]) if os.path.isfile(path): path=os.path.dirname(path) return os.path.abspath(path) else: caller_file=inspect.stack()[1][1] return os.path.abspath(os.path.dirname(caller_file))
(2)但是有时我们需要得到文件所在的当前路径,如果在不同目录使用模块方式调用。使用os.getcwd得到的结果将不是我们所要的。
#!/usr/bin/env python import inspect #看看如下的结果 path = inspect.getfile(inspect.currentframe()) path = os.path.dirname(path) print path