博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 路径问题
阅读量:7027 次
发布时间:2019-06-28

本文共 1553 字,大约阅读时间需要 5 分钟。

hot3.png

例子

#!/bin/env python#-*- encoding=utf8 -*-import os,sysif __name__=="__main__":    print "__file__=%s" % __file__    print "os.path.realpath(__file__)=%s" % os.path.realpath(__file__)    print "os.path.dirname(os.path.realpath(__file__))=%s" % os.path.dirname(os.path.realpath(__file__))      print "os.path.split(os.path.realpath(__file__))=%s" % os.path.split(os.path.realpath(__file__))[0]      print "os.path.abspath(__file__)=%s" % os.path.abspath(__file__)    print "os.getcwd()=%s" % os.getcwd()    print "sys.path[0]=%s" % sys.path[0]    print "sys.argv[0]=%s" % sys.argv[0]输出结果:D:\>python ./python_test/test_path.py__file__=./python_test/test_path.pyos.path.realpath(__file__)=D:\python_test\test_path.pyos.path.dirname(os.path.realpath(__file__))=D:\python_testos.path.split(os.path.realpath(__file__))=D:\python_testos.path.abspath(__file__)=D:\python_test\test_path.pyos.getcwd()=D:\sys.path[0]=D:\python_testsys.argv[0]=./python_test/test_path.py

os.getcwd() “D:\”,取的是起始执行目录

sys.path[0]或sys.argv[0] “D:\python_test”,取的是被初始执行的脚本的所在目录
os.path.split(os.path.realpath(__file__))[0] “D:\python_test”,取的是__file__所在文件test_path.py的所在目录 

正确获取当前的路径

    __file__是当前执行的文件

    # 获取当前文件__file__的路径

    print "os.path.realpath(__file__)=%s" % os.path.realpath(__file__)

    # 获取当前文件__file__的所在目录

   print "os.path.dirname(os.path.realpath(__file__))=%s" % os.path.dirname(os.path.realpath(__file__))   

    # 获取当前文件__file__的所在目录

    print "os.path.split(os.path.realpath(__file__))=%s" % os.path.split(os.path.realpath(__file__))[0] 

转载于:https://my.oschina.net/u/2000675/blog/1585780

你可能感兴趣的文章
Intellij IDEA 10.5 语言设置
查看>>
Activity 中的Toast在Activity销毁后报错,解决方法,把context改成应用的
查看>>
解决服务器SID引起虚拟机不能加入AD域用户,无法远程登录的问题
查看>>
Don't let self-built concept imprison yourself
查看>>
08.LoT.UI 前后台通用框架分解系列之——多样的Tag选择器
查看>>
python property 学习
查看>>
perl file find
查看>>
jQuery方法position()与offset()区别
查看>>
Flume特点
查看>>
队列 句子分析 精辟的诠释 有图片
查看>>
在switch的default代码块中增加AssertionError错误
查看>>
JS:1.3,函数(function)
查看>>
Ubuntu下升级Git以及获取ssh keys的代码
查看>>
在C#代码中应用Log4Net(一)简单使用Log4Net
查看>>
webservice 测试窗体只能用于来自本地计算机的请求
查看>>
让WordPress主题支持语言本地化(使用poedit软件实现中文翻译功能)
查看>>
[WinAPI] API 6 [操作驱动器挂载点]
查看>>
SQL 在查询中插入行号--自定义分页的另外一种实现方式
查看>>
另类Unity热更新大法:代码注入式补丁热更新
查看>>
(cljs/run-at (JSVM. :browser) "搭建刚好可用的开发环境!")
查看>>