1. python内置format函数可以用来千分位格式化数值,如
>>>format(1234567)
1,234,567
>>>format(1234.45)
1,234.45
无奈python26不支持,没法,只能升到python27
2.升级到python27
yum install gcc gcc-c++
下载python27源码包,如python-2.7.5.tar.gz
tar -xzvf python-2.7.5.tar.gz
cd python-2.7.5
./configure --prefix=/usr/local/python27 #此一步务必记住不要覆盖掉centos6.4自带的python26,指定一个新的安装路径
make && make install
更改系统默认python指向mv /usr/bin/python /usr/bin/python2.6.6.old #备份自带python26
ln -s /usr/local/bin/python27 /usr/bin/python # 将系统默认python指向新安装的python27
python -V 可看到Python 2.7.5
3.yum默认使用的python版本是2.6.6,现在系统指向了python27,所以yum命令会有问题,yum不能正常工作。解决如下:
#vi /usr/bin/yum
将文件头部的#!/usr/bin/python改为
#!/usr/bin/python2.6
4.升级到了python27,发现新的问题,其他依赖系统自带python26的软件,如中文输入法ibus不好使了,只能输入汉字,不能浮显备选项(
比如输入“bir”,不能浮显出“1.比如 2.必然 3.逼人...”等备选项)
原因也简单,yum install "@Chinese Support"安装的ibus输入法是基于python26的(因为centos6.4系统内置python26),升级到python27后,
浮显备选项的函数不好使了。不能显示备选项,中文输入痛苦无比,还不如智能ABC。解决办法:
1.用自己安装的python27安装一个虚拟环境,激活并使用虚拟环境开发,部署代码
2.还原系统默认python指向,指向26,让其他软件工作正常
如果需要切换python26(内置)/27,其实很简单,更改系统默认python文件,软链接指向所需版本即可
由于easy_install pip virtualenv默认安装也是系统全局(System wide)的命令,也要随着python版本对应变化。如果没安装这几个,注释掉切换脚本中对应行。
附切换python26/python27脚本:
#!/bin/bash # # switch python in (26, 27) # # # processname: switch_python.sh # case "$1" in py27) echo "Starting switch to python27" ln -sf /usr/local/python27/bin/python /usr/bin/python ln -sf /usr/local/python27/bin/easy_install /usr/bin/easy_install ln -sf /usr/local/python27/bin/pip /usr/bin/pip ln -sf /usr/local/python27/bin/virtualenv /usr/bin/virtualenv echo "Success...already27." ;; py26) echo "Starting switch to python26" ln -sf /usr/bin/python2.6.6.old /usr/bin/python ln -sf /usr/bin/easy_install-2.6 /usr/bin/easy_install ln -sf /usr/bin/pip-2.6 /usr/bin/pip ln -sf /usr/bin/virtualenv-2.6 /usr/bin/virtualenv echo "Success...already26." ;; *) echo "Usage: $0 {py26|py27}" exit 1 ;; esac