卸载重装Python后dbt仍可运行,是否未随Python一同卸载?
这是完全有可能的,主要有以下几种情况:
dbt的可执行文件被安装到了系统全局路径
当你用pip install dbt-snowflake时,pip可能会把dbt的可执行脚本放到系统的全局PATH目录下(比如Windows的C:\Windows\System32或C:\Program Files,Linux/macOS的/usr/local/bin)。这些路径不属于Python安装目录,所以卸载Python不会删除这里的dbt可执行文件。你可以通过执行where dbt(Windows)或which dbt(Linux/macOS)来查看dbt的具体位置,验证这一点。Python未被彻底卸载干净
很多Python卸载工具不会清理所有关联文件:比如残留的site-packages目录、脚本快捷方式,或者用户目录下的Python缓存文件。如果这些残留目录还在系统PATH里,dbt的相关文件没被删掉,自然还能正常调用。你可以检查旧Python的安装路径(比如Windows的%APPDATA%\Local\Programs\Python,Linux/macOS的~/.local/lib/python*),看看是否还有dbt的残留文件。dbt是通过独立二进制方式安装的
除了pip,dbt Core还提供独立的二进制安装包,这种安装方式的dbt不依赖本地Python环境。如果你的pip install过程中触发了独立二进制的安装(部分环境下会自动选择这种方式),或者你之前无意中用了独立安装包,那dbt本身就和Python环境解绑了,卸载Python自然不会影响它。
内容的提问来源于stack exchange,提问作者tryData

