pycharm中terminal启动py文件对相对路径的影响


  先描述一下问题的背景:

  1.首先,用pycharm打开了一个python工程

  2.python工程里的启动.py文件里定义的函数,有相对路径的操作输出文件

  3.在terminal终端用  python 路径/xxx.py 启动工程

  接下来是对问题的描述:

  函数通过相对路径输出的文件位置不对,比如我通过相对路径  ../../test.txt 想要将test.txt输出到xxx.py文件的上两层目录中,但是文件没有输出到目的目录,而是输出到了其他目录当中。

  问题原因

  经过各种尝试,终于定位到了问题出现的原因就是在用 python 路径/xxx.py 命令启动工程时候的工作路径的问题。

  举例说明:

  比如  我的一个python工程 F:a/b/c/d/e/xx.py ,里边有函数使用相对路径生成文件 ../../test.txt 到上两层目录,打开之后,打开terminal终端,假如此时的工作路径为 (XXX)F:\a\b\c>  ,使用命令 python d\e\xxx.py 启动程序,此时,test.txt会生成到a目录下,如果工作路径为(XXX)F:\a\b\c\d\e>  ,使用命令 python xxx.py启动程序,test.txt会生成到c目录下。

  通过以上两个例子的举例,终于弄明白了,在xxx.py里函数写的相对路径,是相对于当前python工程的工作路径的。

  

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM