Python 3.4版本及以后的标准库添加了新的模块pathlib,它使用面向对象的编程方式来表示和处理文件系统路径。Django 3.1版本以后也将首选使用pathlib来拼接文件路径,来替代传统的os.path模块。小编我今天就对比下pathlib模块和os.path模块的基本用法,看完后你就会知道为什么pathlib会胜出的原因了。尽管未来的Django版本依然支持os.path模块,但使用pathlib会让你显得更加与时俱进。
简单对比
Django 3.0及以前版本默认配置文件settings.py中项目根目录BASE_DIR是使用os.path生成的,意思是项目根目录为settings.py所在文件夹的上级文件夹。
import os
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))