python 环境搭建-Linux 系统下python2.6.6升级python3.5.2步骤

本文介绍如何从Python2.6版本升级至Python3.5版本的详细步骤,包括下载、编译安装及环境变量配置等,并提供了解决升级后可能遇到的问题的方法。
[root@template ~]# python -v
# /usr/lib64/python2.6/encodings/utf_8.pyc matches /usr/lib64/python2.6/encodings/utf_8.py
import encodings.utf_8 # precompiled from /usr/lib64/python2.6/encodings/utf_8.pyc
Python 2.6.6 (r266:84292, Jan 22 2014, 09:42:36) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
dlopen("/usr/lib64/python2.6/lib-dynload/readline.so", 2);
import readline # dynamically loaded from /usr/lib64/python2.6/lib-dynload/readline.so
>>> exit()
复制代码

Python3.5.2官方网站下载地址

https://www.python.org/downloads/source/

复制代码
升级为python3.5版本步骤

root@template ~]# cd /home/nulige/tools/

#下载python-3.5.2
[root@template tools]# wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz

[root@template tools]# ll
总用量 20104
-rw-r--r--  1 root root 20566643 6月  26 05:47 Python-3.5.2.tgz

#解压到下载目录
[root@template tools]# tar zxvf Python-3.5.2.tgz 

[root@template tools]# ll
总用量 20108
drwxrwxr-x  16 1000 1000     4096 6月  26 05:38 Python-3.5.2
-rw-r--r--   1 root root 20566643 6月  26 05:47 Python-3.5.2.tgz
-rwxrwxrwx.  1 root root    13259 5月   8 16:10 system_optimize_scripts.sh

#进入解压后的文件夹
[root@template tools]# cd Python-3.5.2

#在编译前先在/usr/local建一个文件夹python3(作为python的安装路径,以免覆盖老的版本)
[root@template Python-3.5.2]# mkdir /usr/local/python3

#开始编译安装
[root@template Python-3.5.2]#  ./configure --prefix=/usr/local/python3
make && make installchecking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking for --enable-universalsdk... no
checking for --with-universal-archs... no
checking MACHDEP... linux
中间步骤省略............
checking for --without-gcc... no
configure: creating ./config.status
config.status: creating Makefile.pre
config.status: creating Modules/Setup.config
config.status: creating Misc/python.pc
config.status: creating Misc/python-config.sh
config.status: creating Modules/ld_so_aix
config.status: creating pyconfig.h
creating Modules/Setup
creating Modules/Setup.local
creating Makefile

[root@template Python-3.5.2]# make && make install
中间步骤省略............
if test "x" != "x" ; then \
                rm -f /usr/local/python3/bin/python3-32; \
                (cd /usr/local/python3/bin; ln -s python3.5-32 python3-32) \
        fi
rm -f /usr/local/python3/share/man/man1/python3.1
(cd /usr/local/python3/share/man/man1; ln -s python3.5.1 python3.1)
if test "xupgrade" != "xno"  ; then \
                case upgrade in \
                        upgrade) ensurepip="--upgrade" ;; \
                        install|*) ensurepip="" ;; \
                esac; \
                 ./python -E -m ensurepip \
                        $ensurepip --root=/ ; \
        fi
Ignoring ensurepip failure: pip 8.1.1 requires SSL/TLS

[root@template Python-3.5.2]# echo $?
0
编译完成
################################################
#此时没有覆盖老版本,再将原来/usr/bin/python链接改为别的名字
[root@template Python-3.5.2]# mv /usr/bin/python /usr/bin/python_old

#再建立新版本python的软链接
[root@template Python-3.5.2]# ln -s /usr/local/python3/bin/python3 /usr/bin/python

#就会显示出python的新版本信息
[root@template Python-3.5.2]# python
Python 3.5.2 (default, Aug  2 2016, 11:35:06) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-11)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()     #<----退出python

PS:如果不建立新安装路径python3,而是直接默认安装,则安装后的新python应该会覆盖linux下自带的老版本,也有可能不覆盖,具体看安装过程了,这个大家可以自己试验下,当然如果还想保留原来的版本,那么这种方法最好不过了。

注意事项:
这种方法虽然能安装成功,但会导致yum不能正常使用。

解决方法:
[root@template tools]# cp /usr/bin/yum /usr/bin/yum.backup_2016-08-02

修改第一行参数
vi /usr/bin/yum   
把  #!/usr/bin/python    修改为:/usr/bin/python_old  
或
把  #!/usr/bin/python    修改为:/usr/bin/python2.6

#查看版本
[root@template Python-3.5.2]# python --version
Python 3.5.2
(base) liuze@OpenStack-Compute:~$ pip list Package Version Build ----------------------------- -------------------- ----- absl-py 2.3.1 acvl-utils 0.2 aiohttp 3.8.1 aiosignal 1.2.0 alabaster 0.7.12 anaconda-client 1.9.0 anaconda-navigator 2.1.4 anaconda-project 0.10.2 anyio 3.5.0 appdirs 1.4.4 argon2-cffi 21.3.0 argon2-cffi-bindings 21.2.0 arrow 1.2.2 astroid 2.6.6 astropy 5.0.4 asttokens 2.0.5 async-timeout 4.0.1 atomicwrites 1.4.0 attrs 21.4.0 Automat 20.2.0 autopep8 1.5.7 Babel 2.9.1 backcall 0.2.0 backports.functools-lru-cache 1.6.4 backports.tarfile 1.2.0 backports.tempfile 1.0 backports.weakref 1.0.post1 batchgenerators 0.25.1 batchgeneratorsv2 0.3.0 bcrypt 3.2.0 beautifulsoup4 4.11.1 binaryornot 0.4.4 bitarray 2.4.1 bkcharts 0.2 black 19.10b0 bleach 4.1.0 blessed 1.20.0 blosc2 2.5.1 bokeh 2.4.2 boto3 1.21.32 botocore 1.24.32 Bottleneck 1.3.4 brotlipy 0.7.0 cachetools 4.2.2 causal-conv1d 1.0.0 certifi 2021.10.8 cffi 1.15.0 chardet 4.0.0 charset-normalizer 2.0.4 click 8.0.4 cloudpickle 2.0.0 clyent 1.2.2 cmake 4.0.3 colorama 0.4.4 colorcet 2.0.6 conda 4.12.0 conda-build 3.21.8 conda-content-trust 0+unknown conda-pack 0.6.0 conda-package-handling 1.8.1 conda-repo-cli 1.0.4 conda-token 0.3.0 conda-verify 3.4.2 connected-components-3d 3.24.0 constantly 15.1.0 contextlib2 21.6.0 cookiecutter 1.7.3 cryptography 3.4.8 cssselect 1.1.0 cycler 0.11.0 Cython 0.29.28 cytoolz 0.11.0 daal 2021.4.0 daal4py 2021.5.0 dask 2022.2.1 datashader 0.13.0 datashape 0.5.4 debugpy 1.5.1 decorator 5.1.1 defusedxml 0.7.1 dicom2nifti 2.4.11 diff-match-patch 20200713 distributed 2022.2.1 docopt 0.6.2 docutils 0.17.1 dynamic-network-architectures 0.2 einops 0.8.1 entrypoints 0.4 et-xmlfile 1.1.0 executing 0.8.3 fastjsonschema 2.15.1 fft-conv-pytorch 1.2.0 filelock 3.6.0 flake8 3.9.2 Flask 1.1.2 fonttools 4.25.0 frozenlist 1.2.0 fsspec 2025.7.0 future 0.18.2 gensim 4.1.2 glob2 0.7 gmpy2 2.1.2 google-api-core 1.25.1 google-auth 1.33.0 google-cloud-core 1.7.1 google-cloud-storage 1.31.0 google-crc32c 1.1.2 google-resumable-media 1.3.1 googleapis-common-protos 1.53.0 gpustat 1.1 graphviz 0.21 greenlet 1.1.1 grpcio 1.42.0 h5py 3.6.0 HeapDict 1.0.1 hf-xet 1.1.5 holoviews 1.14.8 huggingface-hub 0.34.3 hvplot 0.7.3 hyperlink 21.0.0 idna 3.3 imagecodecs 2021.8.26 imageio 2.37.0 imagesize 1.3.0 importlib-metadata 4.11.3 incremental 21.3.0 inflection 0.5.1 iniconfig 1.1.1 intake 0.6.5 intervaltree 3.1.0 ipykernel 6.9.1 ipython 8.2.0 ipython-genutils 0.2.0 ipywidgets 7.6.5 isort 5.9.3 itemadapter 0.3.0 itemloaders 1.0.4 itsdangerous 2.0.1 jdcal 1.4.1 jedi 0.18.1 jeepney 0.7.1 Jinja2 2.11.3 jinja2-time 0.2.0 jmespath 0.10.0 joblib 1.1.0 json5 0.9.6 jsonpickle 0.9.6 jsonschema 4.4.0 jupyter 1.0.0 jupyter-client 6.1.12 jupyter-console 6.4.0 jupyter-core 4.9.2 jupyter-server 1.13.5 jupyterlab 3.3.2 jupyterlab-pygments 0.1.2 jupyterlab-server 2.10.3 jupyterlab-widgets 1.0.0 keyring 23.4.0 kiwisolver 1.3.2 lazy_loader 0.4 lazy-object-proxy 1.6.0 libarchive-c 2.9 linecache2 1.0.0 lit 18.1.8 llvmlite 0.43.0 locket 0.2.1 lxml 4.8.0 mamba-ssm 1.0.1 Markdown 3.3.4 MarkupSafe 2.0.1 matplotlib 3.5.1 matplotlib-inline 0.1.2 mccabe 0.6.1 MedPy 0.4.0 mistune 0.8.4 mkl-fft 1.3.1 mkl-random 1.2.2 mkl-service 2.4.0 ml-collections 0.1.1 mock 4.0.3 mpmath 1.2.1 msgpack 1.0.2 multidict 5.2.0 multipledispatch 0.6.0 munch 2.5.0 munkres 1.1.4 mypy-extensions 0.4.3 navigator-updater 0.2.1 nbclassic 0.3.5 nbclient 0.5.13 nbconvert 6.4.4 nbformat 5.3.0 ndindex 1.10.0 nest-asyncio 1.5.5 networkx 3.2.1 nibabel 2.5.1 ninja 1.11.1.4 nltk 3.7 nnunetv2 2.3 nose 1.3.7 notebook 6.4.8 numba 0.60.0 numexpr 2.8.1 numpy 1.23.5 numpydoc 1.2 nvidia-cublas-cu11 11.10.3.66 nvidia-cublas-cu12 12.4.5.8 nvidia-cuda-cupti-cu11 11.7.101 nvidia-cuda-cupti-cu12 12.4.127 nvidia-cuda-nvrtc-cu11 11.7.99 2 nvidia-cuda-nvrtc-cu12 12.4.127 nvidia-cuda-runtime-cu11 11.7.99 nvidia-cuda-runtime-cu12 12.4.127 nvidia-cudnn-cu11 8.5.0.96 2 nvidia-cudnn-cu12 9.1.0.70 nvidia-cufft-cu11 10.9.0.58 nvidia-cufft-cu12 11.2.1.3 nvidia-curand-cu11 10.2.10.91 nvidia-curand-cu12 10.3.5.147 nvidia-cusolver-cu11 11.4.0.1 2 nvidia-cusolver-cu12 11.6.1.9 nvidia-cusparse-cu11 11.7.4.91 nvidia-cusparse-cu12 12.3.1.170 nvidia-cusparselt-cu12 0.6.2 nvidia-ml-py 11.525.112 nvidia-nccl-cu11 2.14.3 nvidia-nccl-cu12 2.21.5 nvidia-nvjitlink-cu12 12.4.127 nvidia-nvtx-cu11 11.7.91 nvidia-nvtx-cu12 12.4.127 objprint 0.2.3 olefile 0.46 opencv-python 4.11.0.86 openpyxl 3.0.9 packaging 21.3 pandas 1.4.2 pandocfilters 1.5.0 panel 0.13.0 param 1.12.0 parsel 1.6.0 parso 0.8.3 partd 1.2.0 pathlib 1.0.1 pathspec 0.7.0 patsy 0.5.2 pep8 1.7.1 pexpect 4.8.0 pickleshare 0.7.5 Pillow 9.5.0 pip 25.1 pkginfo 1.8.2 plotly 5.6.0 pluggy 1.0.0 poyo 0.5.0 prometheus-client 0.13.1 prompt-toolkit 3.0.20 Protego 0.1.16 protobuf 6.31.1 psutil 5.8.0 ptyprocess 0.7.0 pure-eval 0.2.2 py 1.11.0 py-cpuinfo 9.0.0 pyasn1 0.4.8 pyasn1-modules 0.2.8 pycodestyle 2.7.0 pycosat 0.6.3 pycparser 2.21 pyct 0.4.6 pycurl 7.44.1 pydicom 2.4.4 PyDispatcher 2.0.5 pydocstyle 6.1.1 pyerfa 2.0.0 pyflakes 2.3.1 Pygments 2.11.2 PyHamcrest 2.0.2 PyJWT 2.1.0 pylint 2.9.6 pyls-spyder 0.4.0 pyodbc 4.0.32 pyOpenSSL 21.0.0 pyparsing 3.0.4 PyQt5 5.12.3 PyQt5-Qt5 5.15.16 1 PyQt5_sip 12.17.0 PyQtWebEngine 5.12.1 pyrsistent 0.18.0 PySocks 1.7.1 pytest 7.1.1 python-dateutil 2.8.2 python-gdcm 3.0.24.1 python-lsp-black 1.0.0 python-lsp-jsonrpc 1.0.0 python-lsp-server 1.2.4 python-slugify 5.0.2 python-snappy 0.6.0 pytz 2021.3 pyviz-comms 2.0.2 PyWavelets 1.3.0 pyxdg 0.27 PyYAML 6.0 pyzmq 22.3.0 QDarkStyle 3.0.2 qstylizer 0.1.10 QtAwesome 1.0.3 qtconsole 5.3.0 QtPy 2.0.1 queuelib 1.5.0 regex 2022.3.15 requests 2.27.1 requests-file 1.5.1 rope 0.22.0 rsa 4.7.2 Rtree 0.9.7 ruamel.yaml 0.18.10 ruamel.yaml.clib 0.2.12 ruamel-yaml-conda 0.15.100 s3transfer 0.5.0 sacred 0.7.5 safetensors 0.5.3 scikit-image 0.24.0 scikit-learn 1.0.2 scikit-learn-intelex 2021.20220215.212715 scipy 1.13.1 Scrapy 2.6.1 seaborn 0.11.2 SecretStorage 3.3.1 Send2Trash 1.8.0 service-identity 18.1.0 setuptools 60.0.0 simpleitk 2.5.2 sip 4.19.13 six 1.16.0 smart-open 5.1.0 sniffio 1.2.0 snowballstemmer 2.2.0 sortedcollections 2.1.0 sortedcontainers 2.4.0 soupsieve 2.3.1 Sphinx 4.4.0 sphinxcontrib-applehelp 1.0.2 sphinxcontrib-devhelp 1.0.2 sphinxcontrib-htmlhelp 2.0.0 sphinxcontrib-jsmath 1.0.1 sphinxcontrib-qthelp 1.0.3 sphinxcontrib-serializinghtml 1.1.5 spyder 5.1.5 spyder-kernels 2.1.3 SQLAlchemy 1.4.32 stack-data 0.2.0 statsmodels 0.13.2 submitit 1.5.3 sympy 1.13.1 tables 3.6.1 tabulate 0.8.9 tbb 2021.13.1 tblib 1.7.0 tenacity 8.0.1 tensorboardX 2.6.4 termcolor 3.1.0 terminado 0.13.1 testpath 0.5.0 text-unidecode 1.3 textdistance 4.2.1 thop 0.1.1.post2209072238 threadpoolctl 2.2.0 three-merge 0.1.1 tifffile 2024.8.30 timm 0.4.12 tinycss 0.4 tldextract 3.2.0 tokenizers 0.21.4 toml 0.10.2 tomli 1.2.2 toolz 0.11.2 torch 2.0.0 torchvision 0.15.1 tornado 6.1 tqdm 4.64.0 traceback2 1.4.0 traitlets 5.1.1 transformers 4.54.1 triton 2.0.0 Twisted 22.2.0 typed-ast 1.4.3 typing_extensions 4.14.1 ujson 5.1.0 Unidecode 1.2.0 unittest2 1.1.0 urllib3 1.26.9 w3lib 1.21.0 watchdog 2.1.6 wcwidth 0.2.5 webencodings 0.5.1 websocket-client 0.58.0 Werkzeug 2.0.3 wheel 0.45.1 widgetsnbextension 3.5.2 wrapt 1.12.1 wurlitzer 3.0.2 xarray 0.20.1 xlrd 2.0.1 XlsxWriter 3.0.3 yacs 0.1.8 yapf 0.31.0 yarl 1.6.3 zict 2.0.0 zipp 3.7.0 zope.interface 5.4.0是否有和当前python3.10冲突的包
最新发布
08-26
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值