澳门新萄京官方网站-www.8455.com-澳门新萄京赌场网址

的多版本共存,python人生从此处开始

2019-11-04 作者:www.8455.com   |   浏览(166)
print('Hello world !')  #第一个小程序

python3 与 python2 的多版本共存(Linux),python3python2

python3已经出来有些许时候了,python3相比python2进行了大量的改进,包括语法,新的功能,还有优化。虽然很多库已经同时支持 python2和python3了,但是有些库仍然没有很好的支持python3,因此有时我们还是需要使用python2。   笔者是在去年开始学python的,作为没有历史包袱的初学者,当时自然而然的选则了python3来进行学习,但是在安装了新的python3后,新安装的python3不可避免的与系统自带的python2产生了一些冲突。包括不同版本的调用,不同版本的python库安装工具(pip,easy_install)。   本文就python2和pyhon3共存的环境进行了说明,包括python3的安装,pip的安装,以及如何调用这两种python版本。  

CentOS7安装Python3

CentOS7默认安装了python2.7.5,当需要使用python3的时候,可以手动下载python源码后编译安装。

  1. 下载python()
  2. 解压下载好的压缩包
  3. sudo mkdir /usr/local/python3
    进入解压目录sudo ./configure --prefix=/usr/local/python3
  4. sudo make
  5. sudo make install
  6. 在/usr/bin中有python、python2、python2.7三个文件依次指向后者,我们将python备份(sudo mv python python.bak),然后创建python3的软链接(sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python)。这样默认的python版本就替换为python3了。
  7. 因为yum使用python2,因此替换为python3后可能无法正常工作,因此修改yum配置文件(sudo vi /usr/bin/yum)。
    将第一行指定的python版本改为python2.7(#!/usr/bin/python 改为 #!/usr/bin/python2.7)

注意:
还有一种可能导致无法使用yum,就是/usr/bin下的python、python2、python2.7三个文件被改变。
如果上述方法修改默认python版本后无法使用yum只能将python.bak还原;然后新建python3的软链接,例如命名为python3以示区分。

最后:
我已成功安装python3,并且没有出现“注意”中的情况,但是在安装某些需要python3依赖的软件时还会提示我需要python3的依赖而我本机python版本为python2,不知如何解决。

CentOS7默认安装了python2.7.5,当需要使用python3的时候,可以手动下载python源码后编译安装。 下载python(...

 python 入门

python模块

python创始人:Guido Van Rossm (荷兰人)

ubuntu的配置方法

python语法31[string的print和format] 

 

python的官网:

官方教程网址:

**python是一种面向对象的解释型计算机程序设计语言**

 

1、安装python2

多数linux发行版都自带了python2,不与要单独安装。

$ sudo apt-get install python2

python语法31[基本数据类型和流程控制]

[Python]随机数与随机字符串  

 

 

2、安装easy_install for python2

使用wget安装(可能需要root权限)[推荐]**

$ wget https://bootstrap.pypa.io/ez_setup.py -O - | python2

或者先下载ez_install.py,再安装

$ python2 ez_install.py

可以看到,安装脚本ez_setup.py支持两种python版本,如果用python2运行该脚本,安装好的easy_install就是针对python2的。同样的,若使用python3运行该脚本,安装好的easy_install就是针对python3的。 

python基础31[数据结构list tuple set dictionary]

举例说明Python的CSV模块  

3、安装pip for python2

$ easy_install-2.7 pip

pip2.7 install xxx

python语法31[函数]

python模块之smtplib: 用python发送SSL/TLS安全邮件  

4、安装python3

$ sudo apt-get install python3

python语法31[类]

python模块之email: 电子邮件编码解码 (二、编码邮件)  

5、安装easy_install for python3

使用wget安装(可能需要root权限)[推荐]

$ wget https://bootstrap.pypa.io/ez_setup.py -O - | python2

**或者先下载ez_install.py,再安装**

$ python ez_install.py

python基础31[help()来查看帮助]

python模块之email: 电子邮件编码解码 (一、解码邮件) 

5、安装pip for python3

$ easy_install pip

 

python模块之poplib: 用pop3收取邮件 

使用 

python2

python 

easy_install

pip

python3 

python3

easy-install3

pip3

 

最后更新:2012/1/11

python optparse 模块使用 

archlinux的配置方法

 

python模块之quopri: quoted-printable编解码

安装python3

$ sudo pacman -S python

一 python文章索引

python模块之base64 

安装python2

$ sudo pacman -S python2 

 

python模块之zipfilepython模块之HTMLParser: 解析html,获取url 

对于archlinux easy_install pip包含在软件库里

python-setuptools python-pip python2-setuptools python2-pip

Total number is :102

python模块之StringIO 

使用

python2 python2  easy_install-2.7 pip2.7   python3 python easy-install pip

与 python2 的多版本共存(Linux),python3python2 python3已经出来有些许时候了,python3相比python2进行了大量的改进,包括语法,新的功能,还...

python基础:
python基础31[__XXX__函数]
python基础31[docstring]
python基础31[help()来查看帮助]
python基础31[list tuple set dict str file的成员方法]
python基础31[python IDE之Eclipse PyDev]
python基础31[python内置函数列表]
python基础31[python在Linux的安装]
python基础31[visualstudio2010来编写python程序]
python基础31[安装及Helloworld]
python基础31[常用模块介绍]
python基础31[数据结构list tuple set dictionary]
python语法31[iterator和generator yield]
python语法31[keywords builtins modules]
python语法31[module/package import]
python语法31[string的print和format]
python语法31[with来自动释放对象]
python语法31[函数]
python语法31[包模块实例]
python语法31[变量的作用域 global]
python语法31[基本数据类型和流程控制]
python语法31[异常处理]
python语法31[引用和拷贝]
python语法31[类]
python语法32[global与nonlocal比较]
python语法32[装饰器decorator]
python语法32[闭包]

Python的logging模块

python类库:
python类库26[PySide之helloworld]
python类库26[web2py与MVC]
python类库26[web2py之介绍]
python类库26[web2py之基本概念]
python类库26[web2py的URL映射]
python类库26[读写Excel]
python类库26[读写mysql]
python类库31[DOM SAX解析XML和HTML]
python类库31[XML RPC实例]
python类库31[httplib2处理http的get和post]
python类库31[logging]
python类库31[python的libpath]
python类库31[使用SAX来解析xml]
python类库31[使用minidom读写xml]
python类库31[使用xml.etree.ElementTree读写xml]
python类库31[压缩与解压]
python类库31[命令行解析]
python类库31[文件和目录os os.path shutil]
python类库31[时间和日期]
python类库31[正则表达式]
python类库31[正则表达式之sub]
python类库31[正则表达式匹配实例]
python类库31[读写文件]
python类库31[读取环境变量]
python类库31[进程subprocess]
python类库31[进程subprocess与管道pipe]
python类库32[多线程]
python类库32[多线程同步Lock RLock Semaphore Event]
python类库32[多进程]
python类库32[多进程共享高级之Manager]
python类库32[多进程同步Lock Semaphore Event]
python类库32[多进程通信Queue Pipe Value Array]
python类库32[序列化和反序列化之pickle]
python类库32[执行外部命令]

 

python实例:
python实例26[sendemail]
python实例26[将log同时写入文件和显示到UI的控件中]
python实例26[查询修改文件的属性]
python实例26[计算MD5]
python实例26[验证用户是否存在于LDAP Server]
python实例31[My Stock Info]
python实例31[urllib.request.urlopen获取股票信息]
python实例31[列出目录下所有的文件到txt]
python实例31[文件夹清理]
python实例31[生成随即的密码]
python实例31[自动挂载虚拟盘]
python实例31[解析buildlog]
python实例32[glob rmtree来删除目录和子目录及其下所有文件]
python实例32[简单的HttpServer]

Python少打字小技巧

python技巧:
python技巧26[python的egg包的安装和制作]
python技巧26[str unicode codecs]
python技巧31[Python 动态加载模块的3种方法]
python技巧31[python Tip2]
python技巧31[pythonTips1]
python技巧31[python中使用enum]
python技巧31[python文件的encoding和str的decode]
python技巧31[unicode和bytes]
python技巧31[判断操作系统类型]
python技巧31[对象相等性|dictionary模拟switchcase]
python技巧31[文件类型 打包EXE]
python技巧31[移植python2.x到3.x]
python技巧31[调用webservice]
python技巧32[常用技巧集]

一 python文章索引

python其他:
Python分布式 云计算
Python转载[编码规范]
python各种语言间时间的转化
python总结
python翻译[排序高级]
python资料
python转载[Rsync Algorithm]
python转载[正则表达式指南]
python转载[编码问题]

 

 

Total number is :102

 

python基础:
python基础31[__XXX__函数]
python基础31[docstring]
python基础31[help()来查看帮助]
python基础31[list tuple set dict str file的成员方法]
python基础31[python IDE之Eclipse PyDev]
python基础31[python内置函数列表]
python基础31[python在Linux的安装]
python基础31[visualstudio2010来编写python程序]
python基础31[安装及Helloworld]
python基础31[常用模块介绍]
python基础31[数据结构list tuple set dictionary]
python语法31[iterator和generator yield]
python语法31[keywords builtins modules]
python语法31[module/package import]
python语法31[string的print和format]
python语法31[with来自动释放对象]
python语法31[函数]
python语法31[包模块实例]
python语法31[变量的作用域 global]
python语法31[基本数据类型和流程控制]
python语法31[异常处理]
python语法31[引用和拷贝]
python语法31[类]
python语法32[global与nonlocal比较]
python语法32[装饰器decorator]
python语法32[闭包]

 

python类库:
python类库26[PySide之helloworld]
python类库26[web2py与MVC]
python类库26[web2py之介绍]
python类库26[web2py之基本概念]
python类库26[web2py的URL映射]
python类库26[读写Excel]
python类库26[读写mysql]
python类库31[DOM SAX解析XML和HTML]
python类库31[XML RPC实例]
python类库31[httplib2处理http的get和post]
python类库31[logging]
python类库31[python的libpath]
python类库31[使用SAX来解析xml]
python类库31[使用minidom读写xml]
python类库31[使用xml.etree.ElementTree读写xml]
python类库31[压缩与解压]
python类库31[命令行解析]
python类库31[文件和目录os os.path shutil]
python类库31[时间和日期]
python类库31[正则表达式]
python类库31[正则表达式之sub]
python类库31[正则表达式匹配实例]
python类库31[读写文件]
python类库31[读取环境变量]
python类库31[进程subprocess]
python类库31[进程subprocess与管道pipe]
python类库32[多线程]
python类库32[多线程同步Lock RLock Semaphore Event]
python类库32[多进程]
python类库32[多进程共享高级之Manager]
python类库32[多进程同步Lock Semaphore Event]
python类库32[多进程通信Queue Pipe Value Array]
python类库32[序列化和反序列化之pickle]
python类库32[执行外部命令]

二 python31代码用来自动生成本索引 (需要保存为utf-8格式)

python实例:
python实例26[sendemail]
python实例26[将log同时写入文件和显示到UI的控件中]
python实例26[查询修改文件的属性]
python实例26[计算MD5]
python实例26[验证用户是否存在于LDAP Server]
python实例31[My Stock Info]
python实例31[urllib.request.urlopen获取股票信息]
python实例31[列出目录下所有的文件到txt]
python实例31[的多版本共存,python人生从此处开始。文件夹清理]
python实例31[生成随即的密码]
python实例31[自动挂载虚拟盘]
python实例31[解析buildlog]
python实例32[glob rmtree来删除目录和子目录及其下所有文件]
python实例32[简单的HttpServer]

#-*- coding: utf-8 -*-

python技巧:
python技巧26[python的egg包的安装和制作]
python技巧26[str unicode codecs]
python技巧31[Python 动态加载模块的3种方法]
python技巧31[python Tip2]
python技巧31[pythonTips1]
python技巧31[python中使用enum]
python技巧31[python文件的encoding和str的decode]
python技巧31[unicode和bytes]
python技巧31[判断操作系统类型]
python技巧31[对象相等性|dictionary模拟switchcase]
python技巧31[文件类型 打包EXE]
python技巧31[移植python2.x到3.x]
python技巧31[调用webservice]
python技巧32[常用技巧集]

import urllib.request
import re

python其他:
Python分布式 云计算
Python转载[编码规范]
python各种语言间时间的转化
python总结
python翻译[排序高级]
python资料
python转载[Rsync Algorithm]
python转载[正则表达式指南]
python转载[编码问题]

pythontagurl = ""
pythonarticleurlregrex = "(<a.*?href=";)"

 

# get the page content string which contains all python article links
pythontagpage = urllib.request.urlopen(pythontagurl)
pythontagstr = ""
for line in pythontagpage.readlines():
   try:
     newline = line.decode('utf-8', 'strict')
     #print(newline)
   except:
     continue
   pythontagstr  =  newline
pythontagpage.close()

二 python31代码用来自动生成本索引 (需要保存为utf-8格式)

# get all link and sort 
pythonlinkandtiles = re.findall(pythonarticleurlregrex, pythontagstr)
d = dict()
for link, title in pythonlinkandtiles:
  d[title] = link
pythontitles = list(d.keys())
bstr1 = "python基础"
bstr2 = "python语法"
estr = "python实例"
lstr = "python类库"
tstr = "python技巧"
ostr = "python其他"
basic = []
examples = []
libs = []
tips = []
others = []
for k in pythontitles:
  if k.startswith(bstr1) or k.startswith(bstr2):
     basic.append(k)
  elif k.startswith(estr) :
     examples.append(k)
  elif k.startswith(lstr) :
     libs.append(k)
  elif k.startswith(tstr):
     tips.append(k)
  else:
     others.append(k)
basic.sort()
libs.sort()
examples.sort()
tips.sort()
others.sort()

 1 #-*- coding: utf-8 -*-
 2 
 3 import urllib.request
 4 import re
 5 
 6 pythontagurl = "http://www.cnblogs.com/itech/category/170012.html"
 7 pythonarticleurlregrex = "(<a.*?href="http://www.cnblogs.com/itech/archive.*?>([Pp]ython.*?)</a>)"
 8 
 9 # get the page content string which contains all python article links
10 pythontagpage = urllib.request.urlopen(pythontagurl)
11 pythontagstr = ""
12 for line in pythontagpage.readlines():
13    try:
14      newline = line.decode('utf-8', 'strict')
15      #print(newline)
16    except:
17      continue
18    pythontagstr  =  newline
19 pythontagpage.close()
20 
21 # get all link and sort 
22 pythonlinkandtiles = re.findall(pythonarticleurlregrex, pythontagstr)
23 d = dict()
24 for link, title in pythonlinkandtiles:
25   d[title] = link
26 pythontitles = list(d.keys())
27 bstr1 = "python基础"
28 bstr2 = "python语法"
29 estr = "python实例"
30 lstr = "python类库"
31 tstr = "python技巧"
32 ostr = "python其他"
33 basic = []
34 examples = []
35 libs = []
36 tips = []
37 others = []
38 for k in pythontitles:
39   if k.startswith(bstr1) or k.startswith(bstr2):
40      basic.append(k)
41   elif k.startswith(estr) :
42      examples.append(k)
43   elif k.startswith(lstr) :
44      libs.append(k)
45   elif k.startswith(tstr):
46      tips.append(k)
47   else:
48      others.append(k)
49 basic.sort()
50 libs.sort()
51 examples.sort()
52 tips.sort()
53 others.sort()
54 
55 pythonarticles = []
56 fonts = "<br/><font color=red size = 5>"
57 fonte = ":</font>"
58 pythonarticles.append( fonts   bstr1   fonte )
59 for py in basic: pythonarticles.append(d[py]) 
60 pythonarticles.append(fonts   lstr   fonte )
61 for py in libs: pythonarticles.append(d[py])
62 pythonarticles.append(fonts   estr   fonte ) 
63 for py in examples: pythonarticles.append(d[py]) 
64 pythonarticles.append(fonts   tstr   fonte )
65 for py in tips: pythonarticles.append(d[py])
66 pythonarticles.append(fonts   ostr   fonte )
67 for py in others: pythonarticles.append(d[py]) 
68 
69 # generate pythonindex.html
70 pythonindex = open("pythonindex.html", "w",encoding='utf-8')
71 pythonindex.write("<html>")
72 pythonindex.write("<head>")
73 pythonindex.write("<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>")
74 pythonindex.write("<title>Python - iTech's Blog</title>")
75 pythonindex.write("</head>")
76 pythonindex.write("<body>")
77 pythonindex.write("Total number is :"   str(len(pythonarticles))   "</br>")
78 for pa in pythonarticles:
79   pythonindex.write(pa)
80   pythonindex.write("</br>")
81 pythonindex.write("</body>")
82 pythonindex.write("</html>")
83 pythonindex.close()

pythonarticles = []
fonts = "<br/><font color=red size = 5>"
fonte = ":</font>"
pythonarticles.append( fonts   bstr1   fonte )
for py in basic: pythonarticles.append(d[py]) 
pythonarticles.append(fonts   lstr   fonte )
for py in libs: pythonarticles.append(d[py])
pythonarticles.append(fonts   estr   fonte ) 
for py in examples: pythonarticles.append(d[py]) 
pythonarticles.append(fonts   tstr   fonte )
for py in tips: pythonarticles.append(d[py])
pythonarticles.append(fonts   ostr   fonte )
for py in others: pythonarticles.append(d[py]) 

 

#的多版本共存,python人生从此处开始。 generate pythonindex.html
pythonindex = open("pythonindex.html", "w",encoding='utf-8')
pythonindex.write("<html>")
pythonindex.write("<head>")
pythonindex.write("<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>")
pythonindex.write("<title>Python - iTech's Blog</title>")
pythonindex.write("</head>")
pythonindex.write("<body>")
pythonindex.write("Total number is :"   str(len(pythonarticles))   "</br>")
for pa in pythonarticles:
  pythonindex.write(pa)
  pythonindex.write("</br>")
pythonindex.write("</body>")
pythonindex.write("</html>")
pythonindex.close()

作者:iTech
出处:

 

 

 

 

完!

本文由澳门新萄京官方网站发布于www.8455.com,转载请注明出处:的多版本共存,python人生从此处开始

关键词: