【每日一學】python 中sys.path 和 import 語句的關系

2024年2月6日 20点热度 0人点赞

sys.path 和 import 語句的關系是一個常見的Python問題。簡單來說,sys.path 是一個包含了解釋器可以查找模塊的所有路徑的列表,而 import 語句是用來導入模塊的命令。

當使用 import 語句時,Python解釋器會按照以下順序搜索模塊:

  • 首先,它會在內置模塊(built-in modules)中查找,這些模塊是Python自帶的一些基礎功能,比如 sys, os, math 等。
  • 其次,它會在 sys.path 列表中的路徑中查找,這些路徑包括:當前執行腳本的路徑(如果有的話)環境變量 PYTHONPATH 中指定的路徑(如果有的話)Python默認安裝路徑中的 site-packages 路徑,這裡通常存放第三方庫,比如 numpy, pandas, requests 等。
  • 最後,如果沒有找到模塊,它會拋出 ModuleNotFoundError 的異常。

有時候,可能需要導入一些不在 sys.path 列表中的模塊,這時候你可以使用 sys.path.append(path) 的方法來添加模塊所在的路徑到 sys.path 列表中,這樣就可以讓解釋器找到你需要的模塊了。