擅长:python、mysql、java
<p>(回答我自己的问题)</p>
<p>根据我的经验,这些问题通常是由通过<code>apt</code>安装的python包与通过<code>pip</code>安装的python包之间的兼容性问题引起的。在</p>
<p>不幸的是,我无法重建安装jupyter/scipy/etc环境所需的一系列冗长步骤。某些包必须通过<code>apt</code>被拉入,而其他包必须通过<code>pip</code>被拉入,从而导致版本冲突。在</p>
<h3>这种方法最初解决了问题:</h3>
<ul>
<li>在<a href="https://stackoverflow.com/questions/38112756/how-do-i-access-packages-installed-by-pip-user">this answer</a>之后,我运行<code>python -c "import site; print(site.USER_BASE)"</code>来查找pip安装<code> user</code>包的位置</li>
<li>对我来说,这是<code>~/.local</code></li>
<li>我将<code>~/.local</code>移到<code>~/.local_disabled</code>以删除所有本地安装的包</li>
<li>此时,Jupyter再次工作(它必须通过<code>apt</code>与系统python一起安装)。在</li>
<li>我只添加了用户包的一小部分,并将密切关注不兼容性。在</li>
<li>我想,避免通过<code>apt</code>引入Jupyter/ipython可能是将来避免这个问题的更好方法。在</li>
</ul>
<h3>在随后的系统更新之后,问题返回</h3>
<p>这似乎证实了这个问题是由于通过<code>apt</code>安装的python包与通过<code>pip</code>安装的python包不匹配而引起的。这次,为了解决这个问题,我:</p>
<ul>
<li>卸载了通过<code>apt</code>安装的python包(但不是与Ubuntu一起安装的核心系统的一部分)。这主要包括jupyter及其许多依赖项。在</li>
<li>使用<code>pip install jupyter user</code>重新安装了Jupyter。在</li>
<li>这(暂时)起作用了。在</li>
</ul>
<p>(请随时编辑/评论/扩展此答案。)在</p>