django BASE_DIR
import os
BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
PROJECT_DIR = os.path.dirname(BASE_DIR)
- 1.os.path.abspath(file)返回的是.py文件的绝对路径,也就是settings.py这个文件路径
- 2.os.path.dirname(os.path.abspath(file)) 返回的是
os.path.abspath(file)
父级及也就是settings.py这个文件的目录 - 3.BASE_DIR=os.path.dirname(os.path.dirname(os.path.abspath(file))) 这里BASE_DIR也就是整个工程project的目录
PROJECT_DIR = os.path.join(settings.BASE_DIR, "project") # 即项目目录下的project目录
DEFAULT_FONTS = os.path.join(PROJECT_DIR, "01.txt") # 即01.txt文件在project目录下
os
- 提供一种方便的的使用操作系统函数的方法.
- 就是一个普通的python库,用来向Python程序提供运行环境,特别是在文件系统、创建新进程、获取操作系统本身的一些信息(比如uname),并屏蔽各种不同操作系统之间的细节差异;
sys
- 提供与解释器交互使用的函数.
- sys模块则是python程序用来请求解释器行为的接口。比如关于调试类的(trace, frames,except)等,profiling类(stats, getsizeof),运行时环境类(python path, stderr, stdout),解释器本身(如version)。inspect某种程度上可以看成是在sys提供的功能上的一个包装。