jupyter按tab无法补齐的解决(非Hinterland问题)

前言:本人各种库的安装都是用的国内源,但是并非都来自同一个源(使用了豆瓣源、清华源等)。导致我的jupyter里按tab无法自动补齐。经过尝试,排除了以下可能:

  • 快捷键设置:编辑模式中的Tab快捷键是自带的、无法修改的!
  • 插件NbextensionsHinterland:已添加,依旧无法补齐;但是打()会提示内部选项!
  • 也不是ipython_config.py文件中的设置问题:
    c.Completer.greedy = True
    c.Completer.jedi_compute_type_timeout = 400
    c.Completer.use_jedi = True

核心问题:不同库的版本号不匹配!!!!!

出问题时/修改后的相关库的版本号:

  • python:3.8.5
  • ipython:7.11.0 —— 最后升级为:7.19.0
  • Werkzeug:1.0.1
  • jupyter-core:4.7.0
  • jedi:0.18.0 —— 最后降级为:0.17.2

容易出问题的版本号搭配:

  • 当python在3.8.x时,ipython最好直接更新为最新版本(7.11.x在import导入库时出现:TypeError: required field "type_ignores" missing from Module的错误)!
  • ipython和Werkzeug是紧密相关的,建议二者都直接升到最新版(若一个老版一个新版,也容易出现上面的问题,或Tab失效!);
  • jedi和ipython、jupyter中的Tab补全功能关系密切!其中jedi不建议升级最新版(最新版在github上已经有issues了,所有老稳定版本肯定可以继续使用tab功能);

补充:

  • jupyter其实和ipython本质是一样的(只不过jupyter有web界面更好看而已);所有测试tab功能、import导入库是否正常等功能时,不必打开jupyter(打开比较麻烦,关闭更麻烦),只用在ipython中测试即可!—— 但不用再python中测试!
  • 没必要改变python的版本,只需改变配套库的版本号即可!肯定有匹配能用的版本号!
  • 对于一个库的升降级,只用(可升可降):pip install -upgrade xxx=0.71.0
  • 如果用国内源,不要开科学xx上网software,否则会一直retry!

你可能感兴趣的:(jupyter按tab无法补齐的解决(非Hinterland问题))