开发者

python获取当前文件所在目录、获取上级目录的坑及解决

目录
  • python获取当前文件所在目录、获取上级目录的坑
    • 在python中获取当前文件所在路径的方式
    • 获取上级目录,及上上级目录方法
  • python利用os获取目录
    • 返回编程客栈当前文件下的工作目录路径
    • 返回当前工作目录
    • 返回上级工作目录
  • 总结

    python获取当前文件所在目录、获取上级目录的坑

    在项目里为了方便迁移到其它机器不会出现路径错误,经常使用相对路径。

    在python中获取当前文件所在路径的方式

    有以下几种:

    第一种是获取当前文件的全路径:

    # 获取当前文件的路径,包括文php件名
    print(__file__)

    第二种是获取当前文件所在目录:

    # dirname去掉文件名,返回目录
    print(os.path.dirname(__file__))

    第三种是获取当前文件的工作目录:

    # getcwd返回当前工作目录,有可能和当前文件所在目录不同
    print(os.getcwd())

    实际写程序的时候,如果怎么配路径都不对的话,有可能是因为用的不是当前文件的工作目录——有时候当前文件的工作目录和当前文件实际所在的目录是不一样的。。。

    所以配置相对路径时,第一步先使用os.getcwd()查看当前文件所在的工作目录,然后再做具体的配置。

    获取上级目录,及上上级目录方法

    如下:

    # 获取上级目录
    print(os.path.abspath(os.path.join(os.getcwd(), "..")))
    # 获取上上级目录
    print(os.path.abspath(os.path.join(os.getcwd(), "../..")))

    python利用os获取目录

    返回当前文件下的工作目录路径

    os.path.abspath('test.txt')

    返回当前工作目录

    os.getcwd()
    os.path.abspath('.')
    os.编程客栈path.abspath(os.curdir)
    os.path.abspath(os.path.dirname(os.path.abspath(__file__)))

    返回上级工作目录

    os.path.abspath('..')

    os.walk() 用于在目录树中游走输出目录中的文件名

    for root, dirs, filesin os.walk(os.getcwd()):
      print(rphpoot)    #os.walk()所在目录
      print(dirs)    #os.walk()所在目录的所有目录名
      print(files)    #os.walk()所在目录的所有非目录文件名

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.javascriptcppcns.com)。

    0

    上一篇:

    下一篇:

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    最新开发

    开发排行榜