宏观上:2.x 源码不规范,混乱,冗余。
    3.x 源码优美清晰,统一标准,去除了冗余。
 
默认编码方式:2.x ASCII码  3.x UTF-8
  用2.x 处理中文时,需要声明编码方式(由于cmd终端默认编码为GBK,所以声明为utf-8时,在cmd终端上,中文显示为乱码。)
# -*- encoding:utf-8 -*-
 
数据类型
  1. 整型,2.x分int和long两种,3.x只有int类型。
运算符
  1. 不等于,2.x可以使用<>和!=;3.x只能使用!=
print()方法:
2.x可以不用括号,写成
for letter in 'Python':
print '当前字母:', letter
3.x必须有括号
print('当前字母:', letter)
input方法:
  2.x 中,input()会处理成和输入数据相应的类型,是最终目标地址里内容的数据类型
  3.x 中,input()得到的数据统一都是字符串。
  但2.x中,有raw_input()方法,和3.x中的input()作用相同。可见,2.x中,input()有着更复杂的内部实现,用来转化数据类型。

range()函数:

  2.x中,xrange()等价于3.x的,range()返回一个数字的列表。

  3.x中,range()返回可迭代对象,可用list()转化为列表。

dict内建方法:
ps. 3.6之前,字典是无序的;3.6(包括3.6)之后,有序。这个有序和无序的区别是解释器造成的。字典数据类型本身还是无序的。
dict.popitem()无序字典下,是随机删除;有序字典下,是删除最后一对。
dict.keys()
2.x中,返回列表类型的键序列
3.x,返回dict_keys类型的数据,可用list()转换为列表类型
 
迭代器生成器:
3.x 支持 __iter__()和__next__()
2.x 支持__iter__(),next()
 
 
经典类新式类:
2.x 中存在经典类和新式类,默认是经典类,可通过继承object声明为新式类
经典类在多继承关系中,深度优先算法
新式类的super只支持super(子类名,self)
3.x 中只有新式类,默认继承object
新式类在多继承中,用C3算法检索父类,可用mro()方法获取检索序列,super()方法获取序列的相邻的下一个类对象
C3算法:两个原则缺一不可,顺序(序列)和效率(路径尽量短)

continue......

python 2.x 与3.x 的区别总结的更多相关文章

  1. python _、__和__xx__的区别

    python _.__和__xx__的区别 本文为译文,版权属于原作者,在此翻译为中文分享给大家.英文原文地址:Difference between _, __ and __xx__ in Pytho ...

  2. python中import和from...import...的区别

    python中import和from...import...的区别: 只用import时,如import xx,引入的xx是模块名,而不是模块内具体的类.函数.变量等成员,使用该模块的成员时需写成xx ...

  3. 转发 python中file和open有什么区别

    python中file和open有什么区别?2008-04-15 11:30地痞小流氓 | 分类:python | 浏览3426次python中file和open有什么区别?都是打开文件,说的越详细越 ...

  4. Python新式类与经典类的区别

    1.新式类与经典类 在Python 2及以前的版本中,由任意内置类型派生出的类(只要一个内置类型位于类树的某个位置),都属于“新式类”,都会获得所有“新式类”的特性:反之,即不由任意内置类型派生出的类 ...

  5. Python import与from import使用及区别介绍

    Python程序可以调用一组基本的函数(即内建函数),比如print().input()和len()等函数.接下来通过本文给大家介绍Python import与from import使用及区别介绍,感 ...

  6. 【转】python类中super()和__init__()的区别

    [转]python类中super()和__init__()的区别 单继承时super()和__init__()实现的功能是类似的 class Base(object): def __init__(se ...

  7. Python新式类和经典类的区别

    @Python新式类和经典类的区别 class ClassicClass(): pass class NewStyleClass(object): pass x1 = ClassicClass() x ...

  8. Python3.x:python: extend (扩展) 与 append (追加) 的区别

    Python3.x:python: extend (扩展) 与 append (追加) 的区别 1,区别: append() 方法向列表的尾部添加一个新的元素.只接受一个参数: extend()方法只 ...

  9. Python中str()与repr()函数的区别——repr() 的输出追求明确性,除了对象内容,还需要展示出对象的数据类型信息,适合开发和调试阶段使用

    Python中str()与repr()函数的区别 from:https://www.jianshu.com/p/2a41315ca47e 在 Python 中要将某一类型的变量或者常量转换为字符串对象 ...

  10. python 基础-文件读写'r' 和 'rb'区别

    原文链接: python基础-文件读写'r' 和 'rb'区别 一.Python文件读写的几种模式: r,rb,w,wb 那么在读写文件时,有无b标识的的主要区别在哪里呢? 1.文件使用方式标识 'r ...

随机推荐

  1. revit融合

    解决了嵌入部分也会布置砖胎膜或土方问题 1.需根据板往相应方向拉伸,创建拉伸体(非实例) 2.根据轮廓创建融合体 3.将两个物体融合 //创建平面 //创建草图平面,文档必须是族文档 Plane pl ...

  2. jQuery(九)、ajax对象操作

    1 数组和对象操作 1.jQuery.extend([deep,] target, object1, [objectN]) 用一个或多个其他对象来扩展一个对象,返回被扩展的对象. 如果不指定targe ...

  3. nginx系列6:nginx的进程结构

    nginx的进程结构 如下图: 通过ps –ef | grep nginx可以看到共有三个进程,一个master进程,两个worker进程. nginx是多进程结构,多进程结构设计是为了保证nginx ...

  4. 桥接模式 桥梁模式 bridge 结构型 设计模式(十二)

      桥接模式Bridge   Bridge 意为桥梁,桥接模式的作用就像桥梁一样,用于把两件事物连接起来   意图 将抽象部分与他的实现部分进行分离,使得他们都可以独立的发展.  意图解析 依赖倒置原 ...

  5. 为什么 User 应该翻译为 「使用权人」 ?

    User, 旧译「用户」,我在此向大家倡议有条件地选择翻译为「使用权人」. 1. __使用权人__更能反应 User 的本质特征 我们看到一匹马的时候不会说这是一头猪,而 User 的本质是什么?在我 ...

  6. Kotlin 扩展——省略findViewById

    现在 Kotlin 安卓扩展插件能够提供与这些开源库功能相同的体验,不需要添加任何额外代码. import kotlinx.android.synthetic.main.activity_main.* ...

  7. Linux(一)—— Unix&Linux 历史

    Linux(一)-- Unix&Linux 历史 Unix =Unix内核+Unix实用工具 Unix Unix 的诞生 Unix的历史可以追溯到20世纪60年代中期,当时麻省理工学院,AT& ...

  8. 黑阔主流攻防之不合理的cookie验证方式

    最近博主没事干中(ZIZUOZISHOU),于是拿起某校的习题研究一番,名字很6,叫做黑阔主流攻防习题 虚拟机环境经过一番折腾,配置好后,打开目标地址:192.168.5.155 如图所示 这里看出题 ...

  9. ctrl+shift+r / ctrl+f5 强制(不使用缓存)刷新google chrome网页

    我改了csdn图片后, 一直看到的是旧图片, n天之后, 还是旧图片.猜测应该是用了缓存(且缓存更新逻辑失败, 定是csdn的bug), 用ctrl+shift+r, 或者ctrl+f5, 强制刷新页 ...

  10. egg.js与mysql的结合使用,以及部署事项

    最近使用egg.js写了一个小项目练手,主要用来封装接口以及代理接口.进入正题: egg搭建以及各项配置 可以详见官方文档:https://eggjs.org,这里简单描述一下: 1.直接使用脚手架快 ...