【修正版】Python基础学习(一)——安装与配置python2.7.x环境(linux)

2024-01-16 05:32

本文主要是介绍【修正版】Python基础学习(一)——安装与配置python2.7.x环境(linux),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

====================================================================================================================================

日期:2015-09-04

环境:red hat 6-64bit

描述:之前只在windows下小小的玩过Python,大三狗终于下定决心要系统的学学Python了!

            我的虚拟机装的是red hat6.4-64bit,系统自带的Python版本是2.6,为了更方便的学习,所以决心安装/升级一下

====================================================================================================================================

日期:2015-09-08

描述:升级完python隔天用了yum命令,竟然报错了···查了资料才发现原来yum命令是python写的==

            看了一圈资料没直接解决问题,不过受到启发认真地回顾了一下安装python的过程。故完善和修改一下安装日志!

报错信息如下:

 bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory  
//原来/usr/bin/yum脚本的首行标注着此脚本执行的解释器为 #!/usr/bin/python,此时报错提示没有找到
//按网上的教程修改后依旧报错:
There was a problem importing one of the Python modules
required to run yum. The error leading to this problem was:No module named yumPlease install a package which provides this module, or
verify that the module is installed correctly.It's possible that the above module doesn't match the
current version of Python, which is:
2.7.3 (default, Sep  3 2015, 16:58:30) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]If you cannot solve this problem yourself, please go to 
the yum faq at:http://yum.baseurl.org/wiki/Faq

====================================================================================================================================

一、关于Python的安装包

        用wget或直接在官网(http://www.python.org/ftp/python/)下载tar包即可[不过要现在要翻墙了==]。

        最新的Python2版本目前出到2.7.10了。


二、安装Python2.7.10

        安装方法就是典型的编译安装“三部曲”。

(1)解压

[root@localhost soft]# tar xvf Python-2.7.10.tar.xz
[root@localhost soft]# ls Python2.7.10
aclocal.m4     Demo            Mac              PC              README
build          Doc             Makefile         PCbuild         RISCOS
config.guess   Grammar         Makefile.pre     pybuilddir.txt  setup.py
config.log     Include         Makefile.pre.in  pyconfig.h      Tools
config.status  install-sh      Misc             pyconfig.h.in
config.sub     Lib             Modules          python
configure      libpython2.7.a  Objects          Python
configure.ac   LICENSE         Parser           python-gdb.py

(2)编译  

[root@localhost Python-2.7.10]# yum install  gcc   zlib   zlib-devel(用的本地yum)
[root@localhost Python-2.7.10]# ./comfigure   --prefix=/usr/local/python2.7.10 (--prefix是指定安装路径)

(3)安装   

[root@localhost Python-2.7.10]#  make ; make insall
[root@localhost soft]# ls /usr/local/python2.7.10/         //查看安装文件
bin  include  lib  share[root@localhost ~]# /usr/local/python2.7.10/bin/python2.7  //打开python2.7.10的方法
Python 2.7.10 (default, Sep  8 2015, 04:54:27) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 

三、如何使得python命令默认指向新版本

        即使是Python2.7.10安装好了,但系统原来的python命令打开的还是原来的2.6版本。查看一下系统现在的python命令指向哪里

[root@localhost ~]# which python
/usr/bin/python
[root@localhost ~]# whereis  python
python: /usr/bin/python2.6   /usr/bin/python   /usr/lib/python2.6 /usr/lib64/python2.6 /usr/include/python2.6 /usr/share/man/man1/python.1.gz

         那么如何改变呢?有如下3种方法:

[方法1]    添加别名并写入.bashrc文件中

alias python='/usr/local/python2.7.10/bin/python2.7' //实验证明,这种方法因为没有改动到yum命令执行脚本所用到的/usr/bin/python,所以这种方法不会影响到yum命令的使用//值得注意的是:alias后面加的路径一定要到python2.7那个脚本为止,这和后面的两种方法是不一样的

[方法2]   在/etc/profile文件中添加环境变量

[root@localhost ~]# vim /etc/profileexport PATH=$PATH:/usr/local/python2.7.10/bin   //这里写的和方法1就不一样了<pre name="code" class="python">
[root@localhost ~]# source /etc/profile //表示立即更新这个配置文件

 

[方法3]    在.bashrc文件中添加环境变量

[root@localhost ~]# vim  .bashrcexport PATH=$PATH:/usr/local/python2.7.10/bin   <pre name="code" class="python">
注意一下要重新打开终端才能使这个.bashrc文件生效哦

 方法2或3添加环境变量后,还需要将原来的/usr/bin/python文件改动一下才能达到效果。即使用python命令时要让系统找不到它,然后去PATH变量去找,才能达到我们的目的。这里采取的方法是将/usr/bin/python重命名: 

[root@localhost ~]# mv  /usr/bin/python  /usr/bin/python2.6.6  //这个怎么处理都可以,但是不要影响改变到原来whereis查看到的那些路径


因为我们改变了/usr/bin/python,就会发现yum命令不能使用了,报了如文首展示的错误。

仔细想想,原来yum命令执行脚本的首行是什么呢?

[root@localhost ~]# cat  /usr/bin/yum
#!/usr/bin/python
import sys
······//而我们是不是将这个文件重命名了?
//所以为了不影响yum命令的使用,将此脚本的第一行改成  #!/usr/bin/python2.6.6 即可(即我们重命名后的文件名)


至此,安装/升级完成!且没有影响到yum的使用!

[root@localhost /]# python
Python 2.7.10 (default, Sep  8 2015, 04:54:27) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 




       

        

这篇关于【修正版】Python基础学习(一)——安装与配置python2.7.x环境(linux)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/611468

相关文章

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

Linux join命令的使用及说明

《Linuxjoin命令的使用及说明》`join`命令用于在Linux中按字段将两个文件进行连接,类似于SQL的JOIN,它需要两个文件按用于匹配的字段排序,并且第一个文件的换行符必须是LF,`jo... 目录一. 基本语法二. 数据准备三. 指定文件的连接key四.-a输出指定文件的所有行五.-o指定输出

Linux jq命令的使用解读

《Linuxjq命令的使用解读》jq是一个强大的命令行工具,用于处理JSON数据,它可以用来查看、过滤、修改、格式化JSON数据,通过使用各种选项和过滤器,可以实现复杂的JSON处理任务... 目录一. 简介二. 选项2.1.2.2-c2.3-r2.4-R三. 字段提取3.1 普通字段3.2 数组字段四.

Linux kill正在执行的后台任务 kill进程组使用详解

《Linuxkill正在执行的后台任务kill进程组使用详解》文章介绍了两个脚本的功能和区别,以及执行这些脚本时遇到的进程管理问题,通过查看进程树、使用`kill`命令和`lsof`命令,分析了子... 目录零. 用到的命令一. 待执行的脚本二. 执行含子进程的脚本,并kill2.1 进程查看2.2 遇到的

一篇文章彻底搞懂macOS如何决定java环境

《一篇文章彻底搞懂macOS如何决定java环境》MacOS作为一个功能强大的操作系统,为开发者提供了丰富的开发工具和框架,下面:本文主要介绍macOS如何决定java环境的相关资料,文中通过代码... 目录方法一:使用 which命令方法二:使用 Java_home工具(Apple 官方推荐)那问题来了,

从基础到高级详解Go语言中错误处理的实践指南

《从基础到高级详解Go语言中错误处理的实践指南》Go语言采用了一种独特而明确的错误处理哲学,与其他主流编程语言形成鲜明对比,本文将为大家详细介绍Go语言中错误处理详细方法,希望对大家有所帮助... 目录1 Go 错误处理哲学与核心机制1.1 错误接口设计1.2 错误与异常的区别2 错误创建与检查2.1 基础

Python版本信息获取方法详解与实战

《Python版本信息获取方法详解与实战》在Python开发中,获取Python版本号是调试、兼容性检查和版本控制的重要基础操作,本文详细介绍了如何使用sys和platform模块获取Python的主... 目录1. python版本号获取基础2. 使用sys模块获取版本信息2.1 sys模块概述2.1.1

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

Python函数作用域与闭包举例深度解析

《Python函数作用域与闭包举例深度解析》Python函数的作用域规则和闭包是编程中的关键概念,它们决定了变量的访问和生命周期,:本文主要介绍Python函数作用域与闭包的相关资料,文中通过代码... 目录1. 基础作用域访问示例1:访问全局变量示例2:访问外层函数变量2. 闭包基础示例3:简单闭包示例4