python 执行py 文件的时候,默认就会把当前目录增加到sys.path中

import os
print(__file__) #打印文件当前的位置

直接在目录里面执行,结果显示当前文件(pycharm里面会给增加一个绝对路劲,这是pyharm自作主张增加的,终端里面是不会有的)

带上路劲执行,结果显示当前文件的绝对路劲(也就是说我提供了路径,所以__file__能找到我执行的路劲)

import os
print(os.path.dirname(__file__)) #打印当前文件上一层目录

直接执行,结果显示为空

指定路径后,执行会显示当前文件的上一层目录

import os
print(os.path.dirname(os.path.abspath(__file__))) #打印当前文件的绝对路劲,获取当前文件上一层目录

os.path.abspath(__file__) 获取当前当前文件的绝对路劲
os.path.dirname()获取当前文件上一层目录

如果我们加系统变量路劲;推荐使用这种方法:  ---> 当前文件执行的目录的路劲就加入到python 路劲里面,后面不管你目录移动到什么位置,里面的文件都能执行

BASH_DIR = os.path.dirname(os.path.abspath(__file__))
sys.path.append(BASH_DIR)

python 终端执行报错: 因为__file __显示文件路劲,没有在文件里面执行,直接终端执行肯定报错.

>>> print(__file__)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name '__file__' is not defined

 

最新文章

  1. js或css文件合并的三种方式推荐
  2. soap和http的区别
  3. 31. Flatten Binary Tree to Linked List
  4. [js开源组件开发]图片懒加载lazyload
  5. py变量
  6. Xamarin.Android开发实践(十七)
  7. 用宏 x y z,找出最大值最小值
  8. Winform 拦截最小化、最大化、关闭事件【整理】
  9. [改善Java代码]使用valueOf前必须进行校验
  10. Linux中ifreq 结构体分析和使用 及其在项目中的简单应用
  11. KP 佛学禅语
  12. C#基础:命令解析
  13. Android 常用代码大集合 [转]
  14. Ajax中与服务器的通信【发送请求与处理响应】
  15. 51 nod 1203 JZPLCM
  16. [SinGuLaRiTy] Nescafe 24杯模拟赛
  17. Java学习NO.4
  18. 批量找注入 python3+sqlmap结合
  19. Spark机器学习(8):LDA主题模型算法
  20. HG255D刷机OPENWRT笔记

热门文章

  1. ALGO-121_蓝桥杯_算法训练_猴子分苹果
  2. SpringSecurity-SecurityContextPersistenceFilter的作用
  3. appium 点击物理按键
  4. hadoop长时间运行后,stop-all.sh报错
  5. 【转】XP_cmdshell存储过程
  6. [转][C#]HttpClient 代码示例
  7. 配置允许匿名用户登录访问vsftpd服务,进行文档的上传下载、文档的新建删除等操作
  8. [电脑知识点]win10家庭版怎么显示桌面图标
  9. sed初学者实用说明
  10. dataset to list