资讯专栏INFORMATION COLUMN

Python Path

legendaryedu / 2739人阅读

摘要:如果是,这时候的可以是这样的绝对路径,或者是这样的相对路径,绝对路径无悬念,记住相对路径是相对于当前工作路径的。所以在代码中写死的话可能会因为执行时候的实际变化而导致错误。其实就是当前脚本的位置。

脚本所在的路径

If you mean the directory of the script being run:

import os
os.path.dirname(os.path.abspath(__file__))

注意:__file__ 只有在直接运行脚本的时候才会有

当前的工作路径

If you mean the current working directory:

import os
os.getcwd()

当前的工作路径和文件的路径显然是可以不一样的,比如可以 $ python foo/bar.py,那么 os.getcwd()xxx 的话,os.path.dirname(os.path.abspath(__file__)) 的结果就是 xxx/foo/

如果是 open(filename, "r"),这时候的 filename 可以是 /foo/bar.txt 这样的绝对路径,或者是 foo/bar.txt 这样的相对路径,绝对路径无悬念,记住相对路径是相对于当前工作路径的。所以在代码中写死 open("foo.txt", "r") 的话可能会因为执行时候的实际 cwd 变化而导致错误。

sys.argv

sys.argv[0] 其实就是当前脚本的位置。再往后的每一项就是执行这个文件的时候附带的各个参数(如果有的话)。

参考

filesystems - How to get full path of current file"s directory in Python? - Stack Overflow

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/38053.html

相关文章

  • Python3的这些新特性很方便

    摘要:更高性能的默认缩短到时间的更安全的列表推导更简易的合并两个不仅仅合并很方便,合并等也很方便整数类型提供了两个整数类型和,只提供有个整数类型,如下的代码总结提供了很多新的特性,方便我们编码的同时,也带来了更好的安全性和较高的性能。 概述   随着Python在机器学习和数据科学领域的应用越来越广泛,相关的Python库也增长的非常快。但是Python本身存在一个非常要命的问题,就是Pyt...

    zhoutao 评论0 收藏0
  • 不同用户python path 权限问题

    摘要:问题背景用户可以运行但运行则下列错误经过排查,发现是在某些的权限问题解决方法查看使用的代码可知,使用的是查看路径切换到用户然后在命令行运行路径的权限修改路径的权限发现有写目录是没有执行权限的。 问题背景 root 用户可以运行pip install mkdocs但gitlab-runner 运行pip install mkdocs 则下列错误 pip install mkdocs Tr...

    dack 评论0 收藏0
  • [零基础学python]折腾一下目录

    摘要:就像这样以下将一些典型举例说明特别说明,下面的所有操作,均是进入到如下的目录中进行的。上面的操作发现这个文件在当前目录下是不存在的,但是,用能够返回一个绝对路径并带有这个不存在的文件的文件名。返回首页上一讲私有和专有 python在安装的时候,就自带了很多模块,我们把这些模块称之为标准库,其中,有一个是使用频率比较高的,就是 os 。这个库中方法和属性众多,有兴趣的看官可以参考官方文档...

    Crazy_Coder 评论0 收藏0
  • 一篇文章入门Python生态系统

    摘要:你使用的系统自带的包管理器包索引也被称为各种源码托管服务,如,,等。通过系统自带的包管理器安装使用系统自带的包管理器安装,只需要在命令行输入相应命令,或是使用你用来安装其他应用的应用即可。 译者按:原文写于2011年末,虽然文中关于Python 3的一些说法可以说已经不成立了,但是作为一篇面向从其他语言转型到Python的程序员来说,本文对Python的生态系统还是做了较为全面的介绍...

    dadong 评论0 收藏0
  • python基础教程:模块高级技巧

    摘要:标准模块附带了一个标准模块库。它返回一个如果调用不传递参数,则列出当前已经定义的所有名字用可以查看所有的内置类型变量函数等,方法是借助标准模块模块高级技巧总结的搜索路径,顺序一定要搞得清编译后的文件内置函数查看模块定义的名字。 上一节,我们讲解了Python模块的基础知识,这一节我们继续深入了解模块的更多知识,从而让大家全面了解、掌握和运用模块到我们实际的编程中。 在上一节中有一句话接...

    JasinYip 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<