找回密码
 会员注册
查看: 26|回复: 0

Ubuntu安装指定Python版本详解,理论上各版本通用

[复制链接]

2

主题

0

回帖

7

积分

新手上路

积分
7
发表于 2024-9-10 11:53:46 | 显示全部楼层 |阅读模式
此方法理论上讲适用于所有Ubuntu版本(可能太老的不行)本文章中写的是18.04的,之前我在16.04,20.04上均安装成功文章目录下载Python安装Python(方法一:默认安装路径)安装Python(方法二:自定义安装路径)更新命令‘python’默认指向为我们所安装的版本方式一:当前版本号直接将指向链接更新方式二:指向其他版本号众所周知,Ubuntu中自带Python(有些只带2有些只带3,有些两个都带)我们首先查看一下当前系统自带的Python版本及指向:ls-l/usr/bin|greppython12从上图可以看出是我们输入python3指向的是Python3.6的版本我们再输入条命令:python3试试:就进入了Python命令行运行方式,可以看到我们的Python具体版本为3.6.9的,然后我们输入:exit();然后回车就退出了命令行运行方式下载Python下载链接:https://www.python.org/ftp/python/自己找到需要的版本(我这里以安装3.8.5版本为例子)往里面翻找到这个就好了哈在Ubuntu里我们需要下载安装Python到自己指定的路径(我这里直接在当前用户目录下了:cd~)然后我们复制刚刚自己需要的版本的下载链接,在Ubuntu里输入命令:sudowgethttps://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz12安装Python(方法一:默认安装路径)解压安装包到当前目录下并且进入:sudotar-zxvfPython-3.8.5.tgz-C~cdPython-3.8.5123然后我们进行初始化:sudo./configure12注意!如果你输入这条命令后出现下图错误的:输入以下命令安装一下编译环境:sudoapt-getinstallzlib1g-devlibbz2-devlibssl-devlibncurses5-devlibsqlite3-devlibreadline-devtk-devlibgdbm-devlibdb-devlibpcap-devxz-utilslibexpat1-devliblzma-devlibffi-devlibc6-dev123如果这里没报错,而是后面make编译的时候报错的话,也一样输入这条命令即可解决完成后再编译测试安装:(其实**sudomaketest**这条不输入也没事,只是测试一下,而且这条时间比较久,可能要用5-20分钟,后面安装不成功的时候再输入查看问题也行)sudomakesudomaketestsudomakeinstall1234好了,安装完了小提示:这时候Python已经安装完成,可执行文件在/usr/local/bin下,库文件在/usr/local/lib下,配置文件在/usr/local/include下,其他资源文件在/usr/local/share下,大家用Pycharm等编辑器使用Python时就用这些路径此时你会发现,我们输入命令:python3还是出现的python3.6.9,但是你试着尝试输入:python3.8出现的就是我们刚刚安装的python3.8.5版本(欲知后事如何,请翻到本文最后,现在讲第二种安装方法)安装Python(方法二:自定义安装路径)这里按同样,解压安装包到当前目录下并且进入:sudotar-zxvfPython-3.8.5.tgz-C~cdPython-3.8.5123然后我们进行和方法一不一样的初始化:./configure--prefix=/usr/local/python3.8.512解释:**--prefix**后面的参数为指定安装路径注意:如果这里初始化有问题则与方法一的解决方式一样后面和上面方法一安装过程一样,完成后再编译测试安装:sudomakesudomaketestsudomakeinstall1234然后我们需要添加一下环境变量:PATH=$PATHHOME/bin:/usr/local/python3.8.5/bin12好了,安装完了(大家可以输入:echo$PATH查看一下环境变量有没有添加进去)小提示:这时候Python已经安装完成,可执行文件在/usr/local/python3.8.5/bin下,库文件在/usr/local/python3.8.5/lib下,配置文件在/usr/local/python3.8.5/include下,其他资源文件在/usr/local/python3.8.5/share下,大家用Pycharm等编辑器使用Python时就用这些路径然后就和方法一的问题一样,我们输入命令:python3还是出现的python3.6.9,但是你试着尝试输入:python3.8出现的就是我们刚刚安装的python3.8.5版本,接下来讲更新Python默认指向更新命令‘python’默认指向为我们所安装的版本我们回到本文最开头的查看Python指向命令:ls-l/usr/bin|greppython12因为我们现在啥也没设置,所以输入了还是和上面显示的一样,然后我们现在有两种情况:你安装的是对应你这个系统的Python当前版本号你安装的是其他Python版本号什么是Python当前版本号,什么是其他版本号?现在以我这里为例,我们从下图可得:我们输入命令:python3对应的版本为python3.6.9,那么,我们安装的版本如果是python3.6.11,或者是python3.6.5啥的,只要是在这个3.6的版本内就是当前版本号,本文安装的版本号为3.8,所以安装的是其他版本号两种情况有不同的更新指向方式:方式一:当前版本号直接将指向链接更新删除原有链接:sudorm/usr/bin/python12建立新链接:sudoln-s/usr/bin/python3.8/usr/bin/python3sudoln-s/usr/bin/python3.8/usr/bin/python123解释:当中的python3.8就是我们上面在输入python3.8的时候就出现我们安装的python3.8.5的版本嘛,然后这里改为输入python3和python都指向我们的python3.8.5然后输入**python3或者python**就会发现已经好了,方式二就不用再进行了方式二:指向其他版本号因为我们安装的Python3.8是不同于系统自带python的版本号,不在/usr/bin下而在/usr/local/bin或者/usr/local/python3.8.5/bin下(取决于前面执行的是**./configure还是./configure--prefix=/usr/local/python3.8.5,因此需要先加一条软链接并且把之前的python命令改为python.bak**,同时pip也需要更改若Python3.8安装时,执行的是./configure,则依次输入:#将原python与python3命令改为python.bak与python.baksudomv/usr/bin/python/usr/bin/python.baksudomv/usr/bin/python3/usr/bin/python3.bak#将我们刚装的python3.8.5指定运行命令为python与python3sudoln-s/usr/local/bin/python3/usr/bin/pythonsudoln-s/usr/local/bin/python3/usr/bin/python3#将原pip和pip3命令改为pip.bak与pip3.baksudomv/usr/bin/pip/usr/bin/pip.baksudomv/usr/bin/pip3/usr/bin/pip3.bak#将我们刚装的python3.8.5的pip指定运行命令为pip与pip3sudoln-s/usr/local/bin/pip3/usr/bin/pipsudoln-s/usr/local/bin/pip3/usr/bin/pip312345678910111213注意:如果你的系统不自带Python2,则第一句与第五句命令会报错,或者你的系统不自带Python3,则第二句与第六句命令会报错,pip也一样,这是正常的,不用理会,报错内容如下(报错意思其实就是你没有这个):上面的思路梳理一下:更改完成之后,现在输入**python或者是python3将会指向python3.8.5**输入**python.bak或者是python3.bak将会分别指向系统自带的python2与python3**输入**pip或者是pip3将会指向python3.8.5的将会指向pip**输入**pip.bak或者是pip3.bak将会分别指向系统自带的python2与python3的pip**若Python3.8安装时,执行的是./configure--prefix=/usr/local/python3.8.5,则依次输入:#将原python与python3命令改为python.bak与python.baksudomv/usr/bin/python/usr/bin/python.baksudomv/usr/bin/python3/usr/bin/python3.bak#将我们刚装的python3.8.5指定运行命令为python与python3sudoln-s/usr/local/python3.8.5/bin/python3.8/usr/bin/pythonsudoln-s/usr/local/python3.8.5/bin/python3.8/usr/bin/python3#将原pip和pip3命令改为pip.bak与pip3.baksudomv/usr/bin/pip/usr/bin/pip.baksudomv/usr/bin/pip3/usr/bin/pip3.bak#将我们刚装的python3.8.5的pip指定运行命令为pip与pip3sudoln-s/usr/local/python3.8.5/bin/pip3/usr/bin/pipsudoln-s/usr/local/python3.8.5/bin/pip3/usr/bin/pip312345678910111213这里给大家分享一份Python全套学习资料,包括学习路线、软件、源码、视频、面试题等等,都是我自己学习时整理的,希望可以对正在学习或者想要学习Python的朋友有帮助!如果大家对Python感兴趣,这套python学习资料一定对你有用对于0基础小白入门:如果你是零基础小白,想快速入门Python是可以考虑的。一方面是学习时间相对较短,学习内容更全面更集中。二方面是可以根据这些资料规划好学习计划和方向。包括:Python激活码+安装包、Pythonweb开发,Python爬虫,Python数据分析,人工智能、机器学习、Python量化交易等习教程。带你从零基础系统性的学好Python!零基础Python学习资源介绍①Python所有方向的学习路线图,清楚各个方向要学什么东西②600多节Python课程视频,涵盖必备基础、爬虫和数据分析③100多个Python实战案例,含50个超大型项目详解,学习不再是只会理论④20款主流手游迫解爬虫手游逆行迫解教程包⑤爬虫与反爬虫攻防教程包,含15个大型网站迫解⑥爬虫APP逆向实战教程包,含45项绝密技术详解⑦超300本Python电子好书,从入门到高阶应有尽有⑧华为出品独家Python漫画教程,手机也能学习⑨历年互联网企业Python面试真题,复习时非常方便👉Python学习路线汇总👈Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取哈)👉Python必备开发工具👈温馨提示:篇幅有限,已打包文件夹,获取方式在:文末👉Python学习视频600合集👈观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。👉实战案例👈光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。👉100道Python练习题👈检查学习结果。👉面试刷题👈资料领取这份完整版的Python全套学习资料已经上传网盘,朋友们如果需要可以点击下方微信卡片免费领取↓↓↓【保证100%免费】
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

QQ|手机版|心飞设计-版权所有:微度网络信息技术服务中心 ( 鲁ICP备17032091号-12 )|网站地图

GMT+8, 2025-1-5 09:19 , Processed in 1.015230 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表