官网说明:Python 2 or 3区别

简介: 官网说明:Python 2 or 3区别

In summary : Python 2.x is legacy, Python 3.x is the present and future of the language

Python 3.0 was released in 2008. The final 2.x version 2.7 release came out in mid-2010, with a statement of
extended support for this end-of-life release. The 2.x branch will see no new major releases after that. 3.x is
under active development and has already seen over five years of stable releases, including version 3.3 in 2012,
3.4 in 2014, and 3.5 in 2015. This means that all recent standard library improvements, for example, are only
available by default in Python 3.x.
Guido van Rossum (the original creator of the Python language) decided to clean up Python 2.x properly, 
with less regard for backwards compatibility than is the case for new releases in the 2.x range. 
The most drastic improvement is the better Unicode support (with all text strings being Unicode by default) as well as saner bytes/Unicode separation.
Besides, several aspects of the core language (such as print and exec being statements, 
integers using floor division) have been adjusted to be easier for newcomers to learn and to be more consistent with the rest of the language,
 and old cruft has been removed (for example, all classes are now new-style, "range()" returns a memory efficient iterable,
 not a list as in 2.x).


py2与3的详细区别
  • PRINT IS A FUNCTION

   The statement has been replaced with a print() function, with keyword arguments to replace most of the special syntax of the old statement (PEP 3105). Examples:

Old: print "The answer is", 2*2 
New: print("The answer is", 2*2)
Old: print x, # Trailing comma suppresses newline 【不换行】
New: print(x, end=" ") # Appends a space instead of a newline 【不换行】
Old: print # Prints a newline 【换行】
New: print() # You must call the function!【换行】
Old: print >>sys.stderr, "fatal error" 
New: print("fatal error", file=sys.stderr)【标准错误】
Old: print (x, y) # prints repr((x, y))
New: print((x, y)) # Not the same as print(x, y)!


  • You can also customize the separator between items[定制分隔符], e.g.:
  1. print("There are <",2**32,"> possibilities!", sep="")


  • ALL IS UNICODE NOW
  1. 从此不再为讨厌的字符编码而烦恼


  • 还可以这样玩: (A,*REST,B)=RANGE(5)
  1. >>> a,*rest,b = range(5)
  2. >>> a,rest,b
  3. (0,[1, 2, 3], 4)


  • 某些库改名了

Old Name[pyton2]

New Name[pyton3]

_winreg

winreg

ConfigParser

configparser

copy_reg

copyreg

Queue

queue

SocketServer

socketserver

markupbase

_markupbase

repr

reprlib

test.test_support

test.support

 


目录
相关文章
|
18天前
|
存储 开发者 Python
Python 中的数据结构与其他编程语言数据结构的区别
不同编程语言都有其设计理念和应用场景,开发者需要根据具体需求和语言特点来选择合适的数据结构
|
2月前
|
存储 大数据 数据处理
Python 中的列表推导式与生成器:特性、用途与区别
Python 中的列表推导式与生成器:特性、用途与区别
29 2
|
2月前
|
存储 C语言 Python
解密 Python 的变量和对象,它们之间有什么区别和联系呢?
解密 Python 的变量和对象,它们之间有什么区别和联系呢?
27 2
|
3月前
|
存储 Python
Python中类方法、实例方法与静态方法的区别
这三种方法的正确使用可以使代码更加清晰、组织良好并且易于理解,从而有效地支持软件开发的面向对象编程范式。
54 1
|
2月前
|
机器学习/深度学习 缓存 Linux
python环境学习:pip介绍,pip 和 conda的区别和联系。哪个更好使用?pip创建虚拟环境并解释venv模块,pip的常用命令,conda的常用命令。
本文介绍了Python的包管理工具pip和环境管理器conda的区别与联系。pip主要用于安装和管理Python包,而conda不仅管理Python包,还能管理其他语言的包,并提供强大的环境管理功能。文章还讨论了pip创建虚拟环境的方法,以及pip和conda的常用命令。作者推荐使用conda安装科学计算和数据分析包,而pip则用于安装无法通过conda获取的包。
132 0
|
3月前
|
Python
全网最适合入门的面向对象编程教程:Python函数方法与接口-函数与方法的区别和lamda匿名函数
【9月更文挑战第15天】在 Python 中,函数与方法有所区别:函数是独立的代码块,可通过函数名直接调用,不依赖特定类或对象;方法则是与类或对象关联的函数,通常在类内部定义并通过对象调用。Lambda 函数是一种简洁的匿名函数定义方式,常用于简单的操作或作为其他函数的参数。根据需求,可选择使用函数、方法或 lambda 函数来实现代码逻辑。
|
3月前
|
机器学习/深度学习 人工智能 安全
python和Java的区别以及特性
Python:适合快速开发、易于维护、学习成本低、灵活高效。如果你需要快速上手,写脚本、数据处理、做点机器学习,Python就是你的首选。 Java:适合大型项目、企业级应用,性能要求较高的场景。它类型安全、跨平台能力强,而且有丰富的生态,适合更复杂和规模化的开发。
65 3
|
3月前
|
存储 编译器 Linux
Cython 和 Python 的区别
Cython 和 Python 的区别
44 0
|
3月前
|
Python
Python中类属性与实例属性的区别
了解这些区别对于编写高效、易维护的Python代码至关重要。正确地使用类属性和实例属性不仅能帮助我们更好地组织代码,还能提高代码运行的效率。
32 0
|
4月前
|
存储 测试技术 Python
Python 数组和列表有什么区别?
【8月更文挑战第29天】
612 4