全面深入了解Python
python入门非常简单,在入门后总是写不出来pythonic风格的代码,因此想提升自己对python的理解。在这个过程中,把看到的、学到的分享出来。
程序员duke
喜欢编程带来的成就感!
展开
-
全面深入了解python(一)
全面深入了解python(一) 写在开始前,此教程不是基础教程,在看之前你需要有一定的python基础,不然你可能无法理解教程到底教了哪些东西。 环境:python版本是3.6.5(>=3.4即可) 1. Python数据模型 数据模型其实是对Python框架的描述,它规范了这门语言自身构建模块的接口,这些模块包括但不限于序列、迭代器、函数、类和上下文管理器。 Python解释器碰到特殊的句...原创 2019-02-11 14:44:44 · 1883 阅读 · 0 评论 -
全面深入了解python(二)
全面深入了解python(二) 1. 序列构成的数组 1.1 内置序列类型概览 python标准库用C实现了丰富的序列类型: 容器序列: list、tuple和collections.deque这些序列能存放不同类型的数据。 扁平序列: str、bytes、bytearray、memoryview和array.array,这类序列只能存放一种类型的数据。 容器序列存放的是它们所包含的任意类型的对象...原创 2019-02-20 20:26:01 · 463 阅读 · 0 评论 -
全面深入了解python(三)
全面深入了解python(三) 1. 切片 在python里,列表、元组和字符串这类序列类型都支持切片操作。 1.1 为什么切片和区间会忽略最后一个元素 在切片和区间不包含最后一个元素是python的风格,这个习惯符合python、c和其他语言里以0作为起始下标的传统。 当只有最后一个位置信息时,可以快速看出切片和区间里有几个元素:range(3)和my_list[:3]都返回3个元素。 当起止...原创 2019-02-27 20:10:49 · 416 阅读 · 0 评论 -
全面深入了解python(四)
全面深入了解python(四) 1. 用bisect来管理已排序的序列 bisect模块包含两个主要函数,bisect和insort,两个函数都利用二分查找算法在有序序列中查找或插入元素。 1.1 用bisect来搜索 bisect(haystack, needle),其中haystack必须是一个有序的序列,把needle插入位置之后,haystack还能保持升序。也就是说在这个函数返回位置前面...原创 2019-02-28 17:17:14 · 303 阅读 · 0 评论 -
全面深入了解python(五)
全面深入了解python(五) 1. 字典 dict类型不但在各种在各种程序里广泛使用,也是python语言的基石。模块的命名空间、实例的属性和函数的关键字参数中都可以看到字典的身影。 字典类型性能出众的原因是使用了散列表。 1.1 泛映射类型 collections.abc模块中有Mapping和mutableMapping这两个抽象基类。它们的作用是为dict和其他类似的类型定义形式接口。 ...原创 2019-03-05 19:26:29 · 431 阅读 · 0 评论