开发者

Jupyter导入自定义模块及导入后TypeError错误问题及解决

开发者 https://www.devze.com 2023-01-05 09:26 出处:网络 作者: Coder_Guan
目录Jupyter导入自定义模块方法1.相同目录导入方法2.不同目录导入方法TypeError错误www.devze.com解决办法总结Jupyter导入自定义模块方法
目录
  • Jupyter导入自定义模块方法
    • 1.相同目录导入方法
    • 2.不同目录导入方法
  • TypeError错误www.devze.com解决办法
    • 总结

      Jupyter导入自定义模块方法

      1.相同目录导入方法

      如果我当前目录如下:

      A

      a.ipynb

      b.ipynb

      我现在要在b.ipynb中导入a.ipynb中的函数和类

      导入方法为:

      先将a.ipynb下载为a.py文件(下载方法见下图),并放于和b.ipynb相同路径下

      即这时候的文件目录变为:

      A

      a.py

      a.ipynb

      b.ipynb

      注意:下载路径为你当前使用浏览器的下载路径,你需要将下载好的文件移动到相应目录。

      Jupyter导入自定义模块及导入后TypeError错误问题及解决

      这时候可以直接在b.ipynb中使用下面代码直android接导入a.py文件:

      import a

      其他导入规则和普通.py文件导入方法相同

      另一个直接导入.ipynb的方法

      2.不同目录导入方法

      如果将要导入的a.ipynb文python件和要执行的文件b.ipynb不在同一目录下,

      即这时候的文件目录为:

      编程客栈
      A

      a.ipynb

      B

      b.ipynb

      同样,先下载a.py文件,然后文件路径变为

      php
      A

      a.py

      a.ipynb

      B

      b.ipynb

      此时导入a.py的方法为:

      在b.ipynb中先加载a.py所在目录(即目录A),这里用相对路径:

      impor开发者_JAVA入门t sys
      sys.path.insert(0, "./../A/")
      

      这时就可以正常导入a.py文件了

      import a

      TypeError错误解决办法

      注:这里的错误指的是导入模块后报错,和其他情况报TypeError错误不同。

      Jupyter导入自定义模块及导入后TypeError错误问题及解决

      首先确定函数形参和实参数量,类型是否对应。如果对应则解决办法为:

      保存当前.ipynb文件,然后在Running中关闭该文件,重新打开运行。

      错误说明:

      一般该错误发生的原因为:被导入模块的代码被修改,例如被导入模块(即.py文件)中的某个函数原来没有形参。

      此时已经执行import该模块,然后执行后发现该模块中的某个函数需要一个形参,此时去.py文件中加入形参并保存。

      此时再去Jupyter执行该函数,明明形参和实参数量、类型等等都对应,但是还是会报TypeError错误。

      此时其实不是代码的错,而是Jupyter本身的错误,即无法对实时更改内容进行更新,按照加粗红体字解决办法即可解决。

      总结

      以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

      0

      精彩评论

      暂无评论...
      验证码 换一张
      取 消

      关注公众号