本文目录一览:
- 1、为什么python有两个不同的版本,并且语法规范什么的都不相通呢?
- 2、python版本有什么不同
- 3、虚拟环境——用于不同版本的软件python
- 4、python版本不同影响大不大
- 5、如何让电脑优雅得处理两个python版本
- 6、Python的这几个版本区别
为什么python有两个不同的版本,并且语法规范什么的都不相通呢?
Python编程语言的版本已经到3.7了。Python官网对外开放的两个大版本2.x和3.x,两个版本并存最根本原因是为了优化2.x版本的不足,但又不能立即抛弃2.x版本。
2.x版本中2.7版本跟3.x版本的很多功能就已经很想相似了,况且早些年开源的优质项目都是2.x版本写的,所以官网有两个版本的文档供学习和开发者使用。
如果是初学者建议选择3.6版本,2.x版本当你学熟练之后再去找不同就可以了。现在市面上绝大多数开发都是拿3.x版本在做。
纯手打,望采纳。
python版本有什么不同
对比python2和python3,两者的差异如下:
1. Python3 对 Unicode 字符的原生支持。
Python2 中使用 ASCII 码作为默认编码方式导致 string 有两种类型 str 和 unicode,Python3 只
支持 unicode 的 string。Python2 和 Python3 字节和字符对应关系为:
2. Python3 采用的是绝对路径的方式进行 import
Python2 中相对路径的 import 会导致标准库导入变得困难(想象一下,同一目录下有 file.py,如
何同时导入这个文件和标准库 file)。Python3 中这一点将被修改,如果还需要导入同一目录的文件必
须使用绝对路径,否则只能使用相关导入的方式来进行导入。
推荐学习《python教程》
3. Python2 中存在老式类和新式类的区别,Python3 统一采用新式类。新式类声明要求继承 object,
必须用新式类应用多重继承。
4. Python3 使用更加严格的缩进。Python2 的缩进机制中,1 个 tab 和 8 个 space 是等价的,所
以在缩进中可以同时允许 tab 和 space 在代码中共存。这种等价机制会导致部分 IDE 使用存在问题。
Python3 中 1 个 tab 只能找另外一个 tab 替代,因此 tab 和 space 共存会导致报错:TabError:
inconsistent use of tabs and spaces in indentation.
废弃类差异
1. print 语句被 Python3 废弃,统一使用 print 函数
2. exec 语句被 python3 废弃,统一使用 exec 函数
3. execfile 语句被 Python3 废弃,推荐使用 exec(open("./filename").read())
4. 不相等操作符""被 Python3 废弃,统一使用"!="
5. long 整数类型被 Python3 废弃,统一使用 int
6. xrange 函数被 Python3 废弃,统一使用 range,Python3 中 range 的机制也进行修改并提高
了大数据集生成效率
7. Python3 中这些方法再不再返回 list 对象:dictionary 关联的 keys()、values()、items(),zip(),
map(),filter(),但是可以通过 list 强行转换:
1. mydict={"a":1,"b":2,"c":3}
2. mydict.keys() #built-in method keys of dict object at 0x000000000040B4C8
3. list(mydict.keys()) #['a', 'c', 'b']
8. 迭代器 iterator 的 next()函数被 Python3 废弃,统一使用 next(iterator)
9. raw_input 函数被 Python3 废弃,统一使用 input 函数
10. 字典变量的 has_key 函数被 Python 废弃,统一使用 in 关键词
11. file 函数被 Python3 废弃,统一使用 open 来处理文件,可以通过 io.IOBase 检查文件类型
12. apply 函数被 Python3 废弃
13. 异常 StandardError 被 Python3 废弃,统一使用 Exception
修改类差异
1. 浮点数除法操作符“/”和“//”的区别
“ / ”:
Python2:若为两个整形数进行运算,结果为整形,但若两个数中有一个为浮点数,则结果为
浮点数;
Python3:为真除法,运算结果不再根据参加运算的数的类型。
“//”:
Python2:返回小于除法运算结果的最大整数;从类型上讲,与"/"运算符返回类型逻辑一致。
Python3:和 Python2 运算结果一样。
2. 异常抛出和捕捉机制区别
Python2
1. raise IOError, "file error" #抛出异常
2. except NameError, err: #捕捉异常
Python3
1. raise IOError("file error") #抛出异常
2. except NameError as err: #捕捉异常
3. for 循环中变量值区别
Python2,for 循环会修改外部相同名称变量的值
1. i = 1
2. print ('comprehension: ', [i for i in range(5)])
3. print ('after: i =', i ) #i=4
Python3,for 循环不会修改外部相同名称变量的值
1. i = 1
2. print ('comprehension: ', [i for i in range(5)])
3. print ('after: i =', i ) #i=1
虚拟环境——用于不同版本的软件python
有的软件指定 python2.7 版本环境,而高版本的python3.7不适用,这个时候就可以使用 bioconda 创建的虚拟环境,在虚拟环境中安装python2.7
创建虚拟环境
创建python2.7环境
依赖python2.7安装的软件:
使用虚拟环境安装的软件:nanoplot、medaka、artic network、pangolin、prokka
虚拟环境指令:
python版本不同影响大不大
不大,编程类的掌握核心思想,不同版本最多操作上有点区别,就像你掌握了知识点怎么出题你都能做出来
如何让电脑优雅得处理两个python版本
方法/步骤
首先当然是安装你需要的两个不同版本的python,这里我安装的是2.7和3.3的,两个版本安装顺序无所谓。
接下来就是检查环境变量,缺少的我们需要添加。先找到环境变量的位置。在Path环境变量中检查以下4个变量(Path中的环境变量是以分号隔开的):
1.c:\Python27
2.c:\Python27\Scripts
3.c:\Python33
4.c:\Python33\Scripts
少哪个加哪个,注意分号隔开。
然后进入Python2.7安装目录找到如图内容,把python.exe删除。
然后进入python3.3安装目录。找到python.exe程序,把它重命名为python3.exe
最后打开命令行界面测试一下。执行python2命令会进入python2.7的交互环境,执行python3命令会进入python3.3交互环境。
剩下的问题就是pip的问题了。两个python版本分别安装了pip以后怎么区分它们。进入python安装路径找到Scripts文件夹,进入里面找到pip*-script.py,打开修改第一句为你要指定的那个python解释器
Python的这几个版本区别
系统区别:
1、Download Windows X86 可供电脑系统32位使用。
2、Download Windows X86-64 可供电脑系统64位使用。
版本区别:
1、Download Windows X86 web-based installer 是通过需要联网完成安装的文件。
2、Download Windows X86 executable installer 是可执行的安装文件,下载后,双击安装即可。
3、Download Windows X86 embeddable zip file 是可嵌入式的压缩包文件,可以集成到其他应用中。
扩展资料:
Python2与Python3的选择:
因为早期的 Python版本在基础方面设计存在着一些不足之处。2008 年的时候 Guido van Rossum 又重新开发 Python 3.0(被称为Python 3000,或简称Py3k),Python3在设计的时候很好地解决了这些遗留问题, 并且在性能上也有了一定的提升,。
然而 Python3 带来的最大的问题就是不完全向后兼容,当时向后兼容的版本是Python2.6。Python开发团队无法一下子就让所有项目和类库都转到 Python3.0 上面。
所以,两个版本就进入了长期并行开发和维护的状态。但是就更新速度来说 ,Python3更新速度远快于Python2的速度,因为Python2目前主要以维护为主。Python3是未来的趋势。