2018年3月4日

Python学习之路(19)——Python的with语句

摘要: with语句时从Python2.5开始引入的一种与异常处理相关的功能(2.5版本需要通过from __future__ import with_statement导入后方能使用),从2.6版本开始缺省可用。 with语句适用于对资源进行访问的场合,确保不管使用过程中是否发生异常都会执行必要的“清理” 阅读全文

posted @ 2018-03-04 13:10 nicolas_Z 阅读(241) 评论(0) 推荐(0)

2018年3月3日

Python学习之路(18)——try except else finally语句块有return时的执行顺序探究

摘要: 在Python的异常处理中,基本的结构是如下: 思路是: 1)先执行try语句块; 2)如果try语句块发生异常,且与except中的异常相同,则执行except语句块; 3)无论是否有异常,最后执行finally语句块。 但是如果在每个语句块中加入return语句,那么执行顺序是如何的呢? 下面看 阅读全文

posted @ 2018-03-03 20:59 nicolas_Z 阅读(508) 评论(1) 推荐(0)

Python学习之路(17)——私有机制

摘要: 在很多教材中,Python在面向对象编程(OOP)中都会介绍到Python的私有方法和私有属性。 以下划线开头的变量/方法: 1)_xxx 以“单下划线”开始的成员变量叫做保护变量,意思是只有类对象(即类实例)和子类读写才能访问这些变量,需要通过类提供的接口进行访问,不能用"from module 阅读全文

posted @ 2018-03-03 20:15 nicolas_Z 阅读(160) 评论(0) 推荐(0)

2018年3月1日

Python学习之路(16)—— if __name__ == '__main__'

摘要: 当我们打开一个.py文件时,经常会在代码的末尾处看到这样一个语句: 那么这句话是什么意思呢? 我们知道,一个.py文件就是一个模块,所有的模块都有一个内置属性__name__。一个模块的__name__的值取决于我们如何使用这个模块。 1)如果我们import导入一个模块,那么这个模块的__name 阅读全文

posted @ 2018-03-01 20:35 nicolas_Z 阅读(141) 评论(0) 推荐(0)

Python学习之路(15)——生成器

摘要: 生成器可以说是Python语言中最吸引人的特性之一。 生成器也是一种迭代器,但是只能对其迭代一次。生成器作为一种特殊的迭代器,显得更加优雅,能够在很多情况下以一种优雅而又更低内存消耗的方式简化无界(无限)序列相关的操作。它不需要像迭代器那样,需要使用__ite__()和__next__()方法,只需 阅读全文

posted @ 2018-03-01 20:07 nicolas_Z 阅读(153) 评论(1) 推荐(0)

Python学习之路(14)——迭代器

摘要: 在Python中,有以下对象可以通过for语句来直接遍历: 一类是集合数据类型,如list、tuple、dict、set和str等; 一类是generator,包括生成器和带yield的generator function。 这些对象都可以被称为可迭代对象(Iterable)。 迭代器 迭代器对象要 阅读全文

posted @ 2018-03-01 17:11 nicolas_Z 阅读(146) 评论(0) 推荐(0)

2018年2月28日

Python学习之路(13)——类与对象的内置函数

摘要: 这里介绍几个类与对象的内置函数。 1、判断对象关系:issubclass和isinstance issubclass(class, classinfo):如果class是classinfo的子类,则返回True。 注意: 1)一个类可以被认为是自身的子类 2)classinfo可以使类对象组成的元组 阅读全文

posted @ 2018-02-28 16:53 nicolas_Z 阅读(142) 评论(0) 推荐(0)

Python学习之路(12)——绑定方法、未绑定方法以及子类调用父类方法

摘要: Python面向对象编程中有三种重要的概念:继承、重写和多态 这里我们主要讨论一下重写的概念。 先看一个例子,假如存在一个基类Person与子类Student,其中子类重写了父类的构造函数__init__(),运行时会报以下错误: 这是因为尽管Student类继承了Person类,但是并没有调用父类 阅读全文

posted @ 2018-02-28 16:19 nicolas_Z 阅读(523) 评论(0) 推荐(0)

Python学习之路(11)——序列化pickle

摘要: pickle模块实现了一个基本但功能强大的Python对象序列化和反序列化算法。 通过pickle模块的序列化操作,可以将几乎所有的Python对象转换为二进制字节流的形式保存到文件中,永久存储,该过程称之为pickling;而通过pickle的反序列化操作,可以从文件中将二进制的形式转换成对象,创 阅读全文

posted @ 2018-02-28 09:55 nicolas_Z 阅读(258) 评论(0) 推荐(0)

2018年2月27日

Python学习之路(10)——两种特殊的数据类型:字典(dict)和集合(set)

摘要: Python语言中有两类比较特殊的数据类型,字典dict和集合set。 1、字典和集合都是用大括号表示,先看两个例子: 2、字典的表示形式是键值对(key-value),而集合中的元素是唯一的: 3、字典的构造函数: 字典的构造函数为dict,分别有三种形式:dict()、dict(**args)、 阅读全文

posted @ 2018-02-27 20:49 nicolas_Z 阅读(429) 评论(0) 推荐(0)

导航