亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

python 服務器運行代碼報錯ModuleNotFoundError的解決辦法

瀏覽:82日期:2022-07-11 08:53:16

一、問題描述

一段 Python 代碼在本地的 IDE 上運行正常,部署到服務器運行后,出現了 ModuleNotFoundError: No module named ‘xxx’ 錯誤。

二、問題原因

在代碼中引入了其他文件的包(自己寫的包,非 pip 安裝的),問題出在 import 那行語句。

錯誤的原因是因為路徑的原因,服務器端的路徑和我們本地的路徑不一樣顯示。

三、解決示例

要解決這個問題,可以在自己代碼的頂端加入以下代碼:

import sysimport ossys.path.append(os.path.dirname(sys.path[0]))

或者

import sysimport osBASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))sys.path.insert(0, BASE_DIR)

以上代碼可以保證在任何時候都切換到當前執行腳本所在目錄中,具體根據自己腳本所在的目錄結構進行調整。

四、sys.path.append() 和 sys.path.insert()

Python 程序中使用 import xxx 時,Python 解析器會在當前目錄、已安裝和第三方模塊中搜索 xxx,如果都搜索不到就會報錯。

sys.path 模塊可以動態的修改系統路徑,這種方法導入的路徑會在 Python 程序退出后失效。

sys.path 本身是個列表,所以在里面添加目錄是很容易的,添加完后,新目錄即時起效,以后的每次 import 操作都可能會檢查這個目錄。

1. sys.path.append()

在 sys.path 列表的末尾臨時添加搜索路徑,方便更簡潔的 import 其他包和模塊。這種方法導入的路徑會在 Python 程序退出后失效。

示例:

import syssys.path.append(’..’) # 表示導入當前文件的上層目錄到搜索路徑中sys.path.append(’/home/model’) # 絕對路徑from folderA.folderB.fileA import functionA

2. sys.path.insert()

可以定義搜索優先順序,序號從 0 開始,表示最大優先級,sys.path.insert() 加入的也是臨時搜索路徑,程序退出后失效。

示例:

import syssys.path.insert(1, './model')

以上就是python 服務器運行代碼報錯ModuleNotFoundError的解決辦法的詳細內容,更多關于python 代碼報錯的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 任你躁在线精品视频m3u8 | 国产精品久久久久久久久免费观看 | 欧美嗯啊| 曰批免费动漫视频播放免费 | 国产亚洲精品久久久久久 | 亚洲最大在线视频 | 日本大学生免费一级一片 | 国产成人区 | 精品亚洲一区二区在线播放 | 国产aaa级一级毛片 国产aaa免费视频国产 | 久热青青青在线视频精品 | 亚洲精品另类有吗中文字幕 | 国产人成激情视频在线观看 | 中文字幕亚洲第一 | 在线黄色小视频 | xxx国产hd | 亚洲欧美日韩国产精品26u | 欧美日韩视频一区二区三区 | 国产美女亚洲精品久久久毛片 | 国产精品99久久久久久人 | 国产真实一区二区三区 | 成人免费看黄页网址大全 | 国产精品天天看天天爽 | 国产午夜在线观看视频 | 精品一区二区在线观看 1080p | 亚洲欧洲日本精品 | 国产精品国产高清国产专区 | 国产成人亚洲精品一区二区在线看 | 亚洲国产精品aa在线看 | 国产青青在线 | 91在线视频免费91 | 国产主播大尺度精品福利 | 国产亚洲欧美日韩在线观看一区二区 | 免费国产阿v视频在线观看 免费国产高清精品一区在线 | 国产欧美中文字幕 | 黑人超大 | 日韩国产成人精品视频人 | 欧美性生交大片 | 日韩欧美亚洲综合一区二区 | 日本亚欧乱色视频在线系列 | 欧美三级视频在线观看 |