Python 最好的品质之一是一致性. 魔术方法(magic method)是特殊方法的昵称.特殊方法也叫双下方法. 1.1 一摞Python风格的纸牌 import collections Card = collections.namedtuple('Card', ['rank', 'suit']) # 创建了一个有名字的元组 class FrenchDeck: # 隐式继承了Object类 ranks = [str(n) for n in range(2, 11)] + list('JQKA…
2.1 内置序列类型概览 Python 标准库用 C 实现了丰富的序列类型,列举如下. 容器序列 list. tuple 和 collections.deque 这些序列能存放不同类型的数据. 扁平序列 str. bytes. bytearray. memoryview 和 array.array,这类序列只能容纳一种类型. 序列类型还能按照能否被修改来分类. 可变序列 list. bytearray. array.array. collections.deque 和 memoryview. 不…
本书重点: 这本书并不是一本完备的 Python 使用手册,而是会强调 Python 作为编程语言独有的特性,这些特性或者是只有 Python 才具备的,或者是在其他大众语言里很少见的. Python语言核心以及它的一些库会是本书的重点. 目标读者: 正在使用 Python,又想熟悉 Python 3 的程序员 . 主题: 第一部分: 第一部分只有单独的一章,讲解的是 Python 的数据模型(data model),以及如何为了保证行为一致性而使用特殊方法(比如 __repr__),毕竟 Py…
1.安装必要的环境(附图两张) 直接下载安装程序,本人win10系统,根据电脑系统下载并安装对应的python.exe,安装路径可以选择D盘的,具体安装细节这里就不说了,不知道的可以留言或者找度娘 2.开发 安装以后直接打开IDLE,File--New File 左边是IDLE SHELL,右边就是Python源码文件,Python严格区分大小写和格式对齐,下面附上源码: import random print("----------------猜数字小游戏-----------Fine--&q…
Fluent Python 读书手记 Python数据模型:特殊方法用来给整个语言模型特殊使用,一致性体现.如:__len__, __getitem__ AOP: zope.inteface 列表推导(list comprehensive)和 表达式生成器(generator expression),分别用 [...] 和 (...)表未.后者是迭代生成,更节省内存. 元组tuple两大功能特性:不可变.用作数据记录结构(位置信息).元组里的元素最好也是不可变数据. array 和 列表相比的区…
Python深入学习之<Fluent Python> Part 1 从上个周末开始看这本<流畅的蟒蛇>,技术是慢慢积累的,Python也是慢慢才能写得优雅(pythonic)的. 数据模型 python纸牌 import collections # 用来构建一个只有属性,没有方法的简单类,来代表扑克牌的号码和花色. Card = collections.namedtuple('Card', ['rank', 'suit']) class FrenchDeck: # 扑克牌的号码 r…
Fluent Python一书9.4节比较了 Classmethod 和 Staticmethod 两个装饰器的区别: 给出的结论是一个非常有用(Classmethod), 一个不太有用(Staticmethod). 今天我们就对这两个装饰器做更深入的了解和比较, (一) Classmethod: (1)什么时候使用Classmethod? classmethod最常见的用途是定义备选构造方法 (2)如何使用Classmethod? 下面我们用一个示例来展示如何使用classmethod, 假如…
在Fluent Python一书第八章有一个示例,未看书以先很难理解这个示例运行的结果,我们先看结果,然后再分析问题原因: 定义了如下Bus类: class Bus: def __init__(self, passengers=[]): self.passengers = passengers def pick(self, name): self.passengers.append(name) def drop(self, name): self.passengers.remove(name)…
Python简介 Python前世今生 Python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承. 注:ABC语言是由Guido参与设计的一种教学语言,是专门为非专业程序员设计的.就Guido本人看来,ABC这种语言非常优美和强大,但是ABC语言并没有成功,究其原因,Guido认为是非开发造成的.Guido决心在Python中避免这一错误.同时,他还想实现在AB…
初识python 一.python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承. 最新的TIOBE排行榜,Python赶超PHP占据第五!!! 图 由上图可见,Python整体呈上升趋势,反映出Python应用越来越广泛并且也逐渐得到业内的认可!!! Python可以应用于众多领域,如:数据分析.组件集成.网络服务.图像处理.数值计算和科学计算…