日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

Jupyter導入自定義模塊及導入后TypeError錯誤問題及解決_python

作者:Coder_Guan ? 更新時間: 2023-02-10 編程語言

Jupyter導入自定義模塊方法

1.相同目錄導入方法

如果我當前目錄如下:

A
a.ipynb
b.ipynb

我現在要在b.ipynb中導入a.ipynb中的函數和類

導入方法為:

先將a.ipynb下載為a.py文件(下載方法見下圖),并放于和b.ipynb相同路徑下

即這時候的文件目錄變為:

A
a.py
a.ipynb
b.ipynb

注意:下載路徑為你當前使用瀏覽器的下載路徑,你需要將下載好的文件移動到相應目錄。

這時候可以直接在b.ipynb中使用下面代碼直接導入a.py文件:

import a

其他導入規則和普通.py文件導入方法相同

另一個直接導入.ipynb的方法

2.不同目錄導入方法

如果將要導入的a.ipynb文件和要執行的文件b.ipynb不在同一目錄下,

即這時候的文件目錄為:

A
a.ipynb
B
b.ipynb

同樣,先下載a.py文件,然后文件路徑變為

A
a.py
a.ipynb
B
b.ipynb

此時導入a.py的方法為:

在b.ipynb中先加載a.py所在目錄(即目錄A),這里用相對路徑:

import sys
sys.path.insert(0, "./../A/")

這時就可以正常導入a.py文件了

import a

TypeError錯誤解決辦法

注:這里的錯誤指的是導入模塊后報錯,和其他情況報TypeError錯誤不同。

首先確定函數形參和實參數量,類型是否對應。如果對應則解決辦法為:

保存當前.ipynb文件,然后在Running中關閉該文件,重新打開運行。

錯誤說明:

一般該錯誤發生的原因為:被導入模塊的代碼被修改,例如被導入模塊(即.py文件)中的某個函數原來沒有形參。

此時已經執行import該模塊,然后執行后發現該模塊中的某個函數需要一個形參,此時去.py文件中加入形參并保存。

此時再去Jupyter執行該函數,明明形參和實參數量、類型等等都對應,但是還是會報TypeError錯誤。

此時其實不是代碼的錯,而是Jupyter本身的錯誤,即無法對實時更改內容進行更新,按照加粗紅體字解決辦法即可解決。

總結

原文鏈接:https://blog.csdn.net/qq_39213284/article/details/118880605

欄目分類
最近更新