Python学习_10__python2到python3

同样作为动态语言,python的面相对像和ruby有很多类似的地方,这里还是推荐《Ruby元编程》一书来参考学习python的面向对象。然而python并不是纯面向对象设计,所以很多ruby种灵活的技巧在python中可能并不适用,但是这并不影响该书对python面向对象学习的借鉴意义。

从类和实例开始,谈python2到python3

类和实例是面向对象的基础,类是一个对象的定义,比如人类定义了人应该有的基本属性和方法,而实例则是真正的实物,实例中存放了对象的具体信息,如小明是人类的一个实例,小明的身高体重等信息构成小明这个对象的具体信息。然而,类本省也是一个对象,新式类全都继承自一个父类,object是所有类的祖先,是祖先类的最顶级建筑,object这个类也是一个对象,python中,object的类不再称为class,而是type,任何用class关键字定义的类,都是type的一个实例。

类可以通过class关键字来创建:

class MyNewObjectType(bases):
? ? ‘define MyNewObjectType class’
? ? class_suite

在python2中,这里面其实一团糟,经典类:没有继承自其他类的类,是没有__class__属性的,通过type()方法,可以看到,经典类的类型是:<type ‘classobj’>;而新式类,即通过继承其他类而来的类,其类型则是type,python曾近试图将type和class统一,但是明显在python2中,这些概念还是能够困扰到一些人:

class Cls1:
? ? pass
print type(Cls1)
class Cls2(object):
? ? pass
print type(Cls2)
print Cls2.__class__

上述代码结果为:

<type ‘classobj‘>
<type ‘type‘>
<type ‘type‘>

如果你沉迷于类似ruby那样纯面向对象的语法,python2或许会让你受不了,这些遗留问题在python3中得以解决,使其对面向对象的支持更加优秀。

鉴于以上原因,在python面向对象的学习中,全部采用python3,python3由于很多对python2的不兼容性受到质疑,但是至少朝着正确的方向发展,如果不更改python2中遗留的一些问题,当python的库越来越多的时候,难以避免会出现更多的问题,python3的升级同时也会讲一些python2中劣质的库做一次淘汰,优质的库肯定在社区中会得到优先地移植,从语言本身来讲,这未尝不是一件好事情,可以让python3摆脱掉很多的历史包袱,并且具有更加优秀的语法,也让我对其有更加好的预期。从python2到python3是一个重要的决定,他可能会让python失去很多,甚至可能会让python退出舞台,但是我仍然对其看好,相比java对扩展包的不闻不问,python3对自身做出的决绝的改革给python搭建了全新的舞台。

python3中的新特性

http://my.oschina.net/lenglingx/blog/205626

一些常用特性上文中都以提到

时间: 2024-08-03 12:08:11

Python学习_10__python2到python3的相关文章

Python学习:selenium2 + python3.3.5 开发环境准备

Selenium也是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE(7.8.9).Mozilla Firefox.Mozilla Suite等.这个工具的主要功能包括:测试与浏览器的兼容性--测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上.测试系统功能--创建回归测试检验软件功能和用户需求.支持自动录制动作和自动生成 .Net.Java.Perl等不同语言的测试脚本.Selenium 是ThoughtWor

Python学习—linux下Python3的安装

通常将Python安装在/usr/local/python3(具体安装位置看个人喜好,但是要记住安装的位置),因为/usr/local目录下本不存在目录python3,所以先新建目录: mkdir /usr/local/python3 1.从官网下载Python3 https://www.python.org/downloads/ 2.安装依赖环境 安装Python3需要这四个依赖:gcc, zlib, zlib-devel, openssl-devel那么分别安装这四个软件: yum inst

Python学习教程_Python学习路线:Python3里你不知道的秘密特性

Python学习教程_Python学习路线:Python3里你不知道的秘密特性 概述 到2020年,Python2的官方维护期就要结束了,越来越多的Python项目从Python2切换到了Python3.其实在实际工作中,很多伙伴都还是在用Python2的思维写Python3的代码.给大家总结一下Python3一些新的更方便的特性!希望你们看完后也能高效率的编写代码 f-strings (3.6+) 在Python里面,我们经常使用format函数来格式化字符串,例如: user = "Jane

Python学习笔记-编译安装Python3.6.1 + iPython

由于系统已有2.6的python,最好不好修改系统的版本,使用编译安装 下载Python3.6.1包 wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tar.xz 安装依赖: yum -y install readline-devel 解压Python-3.6.1.tar.xz xz -d Python-3.6.1.tar.xztar -xvf Python-3.6.1.tar 编译安装,指定/usr/local/python3

python学习1,python3.6安装

一.Windows 1.下载:https://www.python.org/downloads/ 2.安装 勾选"Add Python3.6 to PATH", 点击"Customize installation" 设置安装路径 3.测试是否安装成功 二.Linux Debian安装python3.6 1.安装gcc.make和zlib # sudo aptitude -y install gcc make zlib1g-dev 2.下载安装包 # wget htt

Python学习路线(Python学习教程_Python学习视频):Python2和Python3你是如何选择的

大家在初学  Python 编程的时候往往都会有一个疑虑,到底是选择 Python 2 还是选择 Python 3 呢?下面跟大家示例解读一下 Python 2 和 Python 3 之间的主要区别! 1. print 语句 python 2 中 print 是一个语句,语句就意味着可以直接跟要打印的东西,不论想输出什么,直接放到 print 关键字后面即可(注:在  Python 2 中想让 print 也当函数使用,可以导入 future 模块 中的 print_function) Pyth

Python 学习参考书目推荐

Python 学习,参考书目推荐 前言 好的技术书籍可以帮助我们快速地成长,大部分人或多或少地受益于经典的技术书籍.在「Python开发者」微信公号后台,我们经常能收到让帮忙推荐书籍的消息.这类的问题在@Python开发者 微博 和 伯乐在线的 Python小组 讨论中也不绝于耳. 7月3日,伯乐在线在「Python开发者」微信公号发起了一个讨论 (注:PC端无法看到大家的评论,需要关注微信公号后,从微信才可以看到),通过这个讨论话题,在评论中分享对自己帮助很大的Python技术书籍.  (Py

Python学习 - python基础

目录: 一. Python的安装 二. Hello World程序 三. 变量 四. 注释 五. 用户输入 六. 流控语句之 if 判断 七. 流控语句之 for 循环 八. 流控语句之 while 循环 一.  Python的安装 windows 1. 通过官网下载Python安装包: https://www.python.org/downloads/2. 安装下载的包, 一路next. 安装过程中可自定义安装路径等...3. 为计算机添加安装目录到环境变量, 以 安装路径 -> "C:

Python学习记录day1

Python学习记录博客是本人记录学习python3过程中的一些记录和过程,日后也可以帮助自己温习. python优点: 1.Python入门简单,功能强大,适用性强: 2.开发效率高,第三方库强大且多: 3.Python无需考虑底层细节: 4.可移植性,跨平台: 5.可扩展性: 6.可嵌入性,Pthon可嵌入到C/C++程序中: python缺点: 1.速度慢,Python比C慢很多,比java也慢一点: 2.代码不能加密,源码是明文: 3.线程不能利用多 CPU 问题: python版本2和