风间时光 發表於 2019-5-29 18:50:00

ubuntu install python/python3 and pip/pip3

<div id="cnblogs_post_body" class="blogpost-body">
<p>Ubuntu16.04默认安装了Python2.7和3.5</p>
<h2>安装Python2+:</h2>
<div class="cnblogs_code">
<pre>sudo apt-<span style="color: rgba(0, 0, 255, 1)">get</span> install python</pre>
</div>
<p>&nbsp;</p>
<p>请注意,系统自带的python千万不能卸载!</p>
<p>输入命令<span style="color: rgba(255, 0, 255, 1)">python</span></p>
<p><img src="data:image/png;base64,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" alt=""></p>
<p>按Ctrl+D退出python命令行</p>
<p><img src="https://images2018.cnblogs.com/blog/1321829/201803/1321829-20180324215130873-705100820.png" alt=""></p>
<p>输入命令<span style="color: rgba(255, 0, 255, 1)">sudo add-apt-repository ppa:jonathonf/python-3.6</span></p>
<p><img src="data:image/png;base64,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" alt=""></p>
<p>按Enter确认</p>
<p>输入命令<span style="color: rgba(255, 0, 255, 1)">sudo apt-get update</span></p>
<p>&nbsp;</p>
<div class="cnblogs_Highlighter">
<pre class="brush:python;gutter:true;">我使用sudo apt-get update之后,更新失败,遇到如下错误。

W: Failed to fetch http://ppa.launchpad.net/jonathonf/python-3.6/ubuntu/dists/precise/main/source/Sources404Not Found
W: Failed to fetch http://ppa.launchpad.net/jonathonf/python-3.6/ubuntu/dists/precise/main/binary-i386/Packages404Not Found

最终发现如下的解决方案!(PPA仓库破损而且陈旧的问题)



问题:我试着通过运行apt-get update命令来再次同步包索引文件,但是却出现了“404 无法找到”的错误,看起来似乎是我不能从先前添加的第三方PPA仓库中获取最新的索引。我怎样才能清除这些破损而且陈旧的PPA仓库呢?
</pre>
</div>
<p>&nbsp;</p>
<p>  </p>
<div class="cnblogs_Highlighter">
<pre class="brush:python;gutter:true;">sudo apt-get update | grep "Failed"
</pre>
</div>
<p>  <img src="https://img2018.cnblogs.com/i-beta/1480414/202002/1480414-20200212233220360-1643179325.png" alt=""></p>
<div class="cnblogs_Highlighter">
<pre class="brush:python;gutter:true;">sudo add-apt-repository --remove ppa:jonathonf/python-3.6<br><br>再次执行: <br>sudo apt-get update</pre>
<p>&nbsp;</p>
</div>
<p>  </p>
<p>&nbsp;</p>
<p>输入命令<span style="color: rgba(255, 0, 255, 1)">sudo apt-get install python3.6</span></p>
<p>按Y确认</p>
<p>&nbsp;</p>
<p>调整Python3的优先级,使得3.6优先级较高</p>
<p><span style="color: rgba(255, 0, 255, 1)">sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 1</span></p>
<p><span style="color: rgba(255, 0, 255, 1)">sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 2</span></p>
<p>更改默认值,python默认为Python2,现在修改为Python3</p>
<p><span style="color: rgba(0, 0, 0, 1)">sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100</span></p>
<p><span style="color: rgba(0, 0, 0, 1)">sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150</span></p>
<p>&nbsp;</p>
<p>此时再输入命令<span style="color: rgba(255, 0, 255, 1)">python</span></p>
<p><img src="https://images2018.cnblogs.com/blog/1321829/201803/1321829-20180324223743781-607955451.png" alt=""></p>
<p>可以看到此时已经是Python3.6了</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h1 id="ubuntu下pip3的安装升级卸载">Ubuntu下pip3的安装、升级、卸载</h1>
<h2 id="安装">安装</h2>
<p><code>sudo apt-get install python3-pip</code></p>
<p>sudo apt-get install python-pip</p>
<h2 id="升级">升级</h2>
<p><code>sudo pip3 install --upgrade pip</code></p>
<p>&nbsp;</p>
<p>python -m pip install --upgrade pip==9.0.3</p>
<p>&nbsp;</p>
<p>如果pip默认不是pip2:</p>
<p>python3 -m pip install --upgrade pip --force-reinstall</p>
<p>python2 -m pip install --upgrade pip --force-reinstall</p>
<h2 id="卸载">卸载</h2>
<p><code>sudo apt-get remove python3-pip</code></p>
<p>1、卸载python3.6</p>
<div class="cnblogs_code">
<pre>sudo apt-get remove python3.6</pre>
</div>
<p>2、卸载python3.6及其依赖</p>
<div class="cnblogs_code">
<pre>sudo apt-get remove --auto-remove python3.6</pre>
</div>
<p>3、清除python3.6</p>
<div class="cnblogs_code">
<pre>sudo apt-get purge python3.6
or
sudo apt-get purge --auto-remove python3.6</pre>
</div>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>下载 easy_install:</p>
<pre>sudo apt-get install python-setuptools python-dev build-essential<br><br><br><br><br><br></pre>
<p>使用pip3 出现以下错误:</p>
<p>Traceback (most recent call last):<br>File “/usr/bin/pip3”, line 9, in&nbsp;<br>from pip import main</p>
<p>&nbsp;</p>
<p>解决办法</p>
<p>修改 /usr/bin/pip 文件</p>
<p>from pip import main<br>if __name__ == '__main__':<br>    sys.exit(main())<br>改为:</p>
<p>from pip import __main__<br>if __name__ == '__main__':<br>    sys.exit(__main__._main())</p>
<pre><br>出现了错误locale.Error: unsupported locale settin<br><br><span class="hljs-label">ubuntu:~<span class="hljs-preprocessor"># export LC_ALL=C<br><br><br><br><br><br></span></span></pre>
</div>
<div class="post-body" style="opacity: 1; display: block; transform: translateY(0)">
<h2 id="一、编译安装">编译安装</h2>
<h3 id="1、下载tar包">1、下载 tar 包</h3>
<p>wget&nbsp;https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tgz</p>
<h3 id="2、解压tar包">2、解压 tar 包</h3>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">tar xfz Python-3.6.5.tgz</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<p>这里使用 <code>xfz</code> 命令,而不建议使用 <code>-xvzf</code> 命令,因为其释放的文件夹需要 root 权限才可以更改或者删除。</p>
<h3 id="3、进入释放的文件夹">3、进入释放的文件夹</h3>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line"><span class="built_in">cd</span> Python-3.6.5/</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<h3 id="4、添加配置">4、添加配置</h3>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">./configure --prefix=/usr/<span class="built_in">local</span>/python3.6</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<p>要配置的是安装 Python 需要的文件夹。配置完成后,终端会显示下面一段话,可以选择无视它,不影响后续操作。</p>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">If you want a release build with all optimizations active (LTO, PGO, etc), </span><br><span class="line">please run ./configure –enable-optimizations</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<h3 id="5、编译源码">5、编译源码</h3>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">sudo make</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<h3 id="6、执行安装">6、执行安装</h3>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">sudo make install</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<p>安装过程持续几分钟,安装成功后,安装的 Python 就在 <code>/usr/bin/python3.6</code> 文件夹之中。</p>
<h3 id="7、修改默认Python版本">7、修改默认 Python 版本</h3>
<p>Ubuntu16.04 版本集成了 Python2.7 及 3.5 版本,系统中原来的 python 在 <code>/usr/bin/python</code>,通过 <code>ls -l</code> 可以看到,python 是一个软链接,链接到本目录下的 <code>python2.7</code>。</p>
<p>我们这里不改变原来的软连接,直接新建一个 python3.6 的软链接。</p>
<p>建立指向 Python3.6 的链接:</p>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">ln -s /usr/<span class="built_in">local</span>/python3/bin/python3.6 /usr/bin/python3.6 <span class="comment">##前面换成你的安装路径</span></span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<p>查询 Python 版本</p>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">python3.6 –version</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<p>如果显示是 <code>python3.6.5</code> 则说明安装成功!</p>
<h3 id="8、make过程出错-Objects-unicodeobject-o-Error">8、make 过程出错 <code> Error</code></h3>
<h4 id="1-、问题描述">1)、问题描述</h4>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">$ make &amp;&amp; make install</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Modules/python.o ./Modules/python.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/acceler.o Parser/acceler.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/grammar1.o Parser/grammar1.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/listnode.o Parser/listnode.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/node.o Parser/node.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/parser.o Parser/parser.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/bitset.o Parser/bitset.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/metagrammar.o Parser/metagrammar.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/firstsets.o Parser/firstsets.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/grammar.o Parser/grammar.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/pgen.o Parser/pgen.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/myreadline.o Parser/myreadline.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/parsetok.o Parser/parsetok.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Parser/tokenizer.o Parser/tokenizer.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/abstract.o Objects/abstract.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/accu.o Objects/accu.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/boolobject.o Objects/boolobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/bytes_methods.o Objects/bytes_methods.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/bytearrayobject.o Objects/bytearrayobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/bytesobject.o Objects/bytesobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/cellobject.o Objects/cellobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/classobject.o Objects/classobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/codeobject.o Objects/codeobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/complexobject.o Objects/complexobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/descrobject.o Objects/descrobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/enumobject.o Objects/enumobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/exceptions.o Objects/exceptions.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/genobject.o Objects/genobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/fileobject.o Objects/fileobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/floatobject.o Objects/floatobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/frameobject.o Objects/frameobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/funcobject.o Objects/funcobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/iterobject.o Objects/iterobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/listobject.o Objects/listobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/longobject.o Objects/longobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/dictobject.o Objects/dictobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/memoryobject.o Objects/memoryobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/methodobject.o Objects/methodobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/moduleobject.o Objects/moduleobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/namespaceobject.o Objects/namespaceobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/object.o Objects/object.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/obmalloc.o Objects/obmalloc.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/capsule.o Objects/capsule.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/rangeobject.o Objects/rangeobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/setobject.o Objects/setobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/sliceobject.o Objects/sliceobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/structseq.o Objects/structseq.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/tupleobject.o Objects/tupleobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/typeobject.o Objects/typeobject.c</span><br><span class="line">gcc -pthread -c-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes    -I. -I./Include    -DPy_BUILD_CORE -o Objects/unicodeobject.o Objects/unicodeobject.c</span><br><span class="line">gcc: Internal error: Killed (program cc1)</span><br><span class="line">Please submit a full bug report.</span><br><span class="line">See &lt;http://bugzilla.redhat.com/bugzilla&gt; <span class="keyword">for</span> instructions.</span><br><span class="line">make: *** Error 1</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<h4 id="2-、解决办法">2)、解决办法</h4>
<p>Usually, you can workaround GCC bugs by disabling optimizations. You can try to modify Makefile to replace <code>"-O3"</code> with <code>"-O2"</code> or even <code>"-O0"</code> (disable all optimizations), and then try to run “make” again.</p>
<p>修改 <code>Makefile</code> 文件,把<code>‘-DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes’</code>中的 <code>O3</code> 改为 <code>O2</code> 即可。</p>
<h4 id="3-、参考">3)、参考</h4>
<ul>
<li>Issue22424</li>
<li>python3 安装 make 过程出错 Objects/unicodeobject.o Error</li>
</ul>
<h2 id="二、采用apt-get安装">二、采用 apt-get 安装</h2>
<h3 id="1、添加python3-6的源">1、添加 python3.6 的源</h3>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">sudo add-apt-repository ppa:jonathonf/python-3.6</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<p>下面出现:</p>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">Don't remove Python 3.5 from your system - it will break.</span><br><span class="line"> More info: https://launchpad.net/~jonathonf/+archive/ubuntu/python-3.6</span><br><span class="line">Press to continue or ctrl-c to cancel adding it</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<p>这里提示我们安装 Python 3.6 后不要删除 Python 3.5,不然的话系统会崩溃,因为 Linux 系统里面对 Pyhon 的依赖是比较多的,网上能查到很多人吐槽自己删除系统默认的 Python 版本后出现问题,不得不重新装回原来的版本,甚至重装系统的经历。我们根据提示键入 Enter 后,把 Python 3.6 的 PPA 源正式加入到源列表:</p>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">gpg: keyring `/tmp/tmpsnw0vrl9/secring.gpg' created</span><br><span class="line">gpg: keyring `/tmp/tmpsnw0vrl9/pubring.gpg' created</span><br><span class="line">gpg: requesting key F06FC659 from hkp server keyserver.ubuntu.com</span><br><span class="line">gpg: /tmp/tmpsnw0vrl9/trustdb.gpg: trustdb created</span><br><span class="line">gpg: key F06FC659: public key "Launchpad PPA for J Fernyhough" imported</span><br><span class="line">gpg: Total number processed: 1</span><br><span class="line">gpg:               imported: 1(RSA: 1)</span><br><span class="line">OK</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<p>然后执行如下命令:</p>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">sudo apt-get update</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<p>再次安装就可以了:</p>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">sudo apt-get install python3.6</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<p>如果提示如下:</p>
<div class="highlight-container">
<div class="table-container">
<table>
<tbody>
<tr>
<td class="code">
<pre><span class="line">E: Failed to fetch http://ppa.launchpad.net/jonathonf/python-3.6/ubuntu/pool/main/p/python3.6/python3.6-minimal_3.6.3-1ubuntu1~16.04.york1_amd64.debConnection timed out</span><br><br><span class="line">E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?</span></pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="copy-btn">&nbsp;</div>
</div>
<p>再执行一遍 <code>apt-get install</code> 就好了。</p>
</div>
<div class="post-nav">&nbsp;</div>
<p>&nbsp;</p><br><br>
来源:https://www.cnblogs.com/presleyren/p/10945579.html
頁: [1]
查看完整版本: ubuntu install python/python3 and pip/pip3