Python高级特性
文章平均质量分 65
isharpener
这个作者很懒,什么都没留下…
展开
-
Python高级特性(六)——数组(列表、元组、字节数组)
数组是编程语言中的基本数据结构,在很多算法中都有广泛的应用。本文介绍一些Python的数组实现,这些数组只用到了语言的核心特性或Python标准库包含的功能。另外,会介绍这些实现的优缺点,在合适的场景选择合适的实现方式。在了解这些知识前,需要清楚数组是有大小固定的记录组成,根据索引能找到每个元素, 并且这些元素是存储在连续的内存块中的,所以它是连续的数据结构。如果需要存储任意对象,且其中可能含有混合数据类型,那么可以选择使用列表或元组,前者可变后者不可变。原创 2023-03-27 14:05:53 · 2743 阅读 · 0 评论 -
Python高级特性(四)——实例方法、类方法、静态方法
一、定义在Python中,字典是一种核心数据结构,字典可以存储任意数量的对象,每个对象都由唯一的字典键标识。字典通常也被称为映射,散列表,查找表或关联数组。可以高效的查找、插入和删除任何与给定键关联的对象。二、基本字典-dict首选的字典数据结构是dict,这是Python中最稳健的字典,并且可以使用一些有用的“语法糖”来处理程序中的字典。例如可以使用花括号字典表达式和字典解析式来创建新的...原创 2023-03-20 11:38:15 · 154 阅读 · 1 评论 -
Python高级特性(一)——抽象基类
一、定义抽象基类(abstract base class, ABC)用来确保派生类中实现了基类中的特定方法,类似于Java中的抽象类。这里主要讨论如何使用Python中内置的模块adc来定义抽象基类抽象基类的设计一般遵循以下原则,这样使得代码更好维护:基类无法实例化如果在子类中忘记实现接口方法,需要尽早报错二、设计现在,我们自己来设计一个抽象类class Base: de...原创 2019-08-26 12:22:12 · 280 阅读 · 0 评论 -
Python高级特性(二)——记录、结构体和纯数据对象
一、什么是namedtuple?顾名思义,将namedtuple翻译过来就是命名的元组,它是基本容器类型tuple的扩展。但在日常的代码编写中,我们很少见到这种类型,但它的优点却是让人惊叹的。我们先将它与tuple进行一个对比,就能感受到namedtuple的用处了。tuple类型的弊端:数据访问的局限性。访问内部数据只能通过整数索引访问,无法赋予其中数据名称,代码可读性不高很难保证两个...原创 2019-08-28 12:21:11 · 384 阅读 · 1 评论 -
Python高级特性(三)——实例变量与类变量
一、区别类变量和实例变量类变量在类定义的内部声明(位于实例方法之外),不受任何特定类实例的束缚。类变量将其内容存储在类本身中,从特定类创建的所有对象都可以访问同一组类变量。修改类变量会同时影响所有对象实例。实例变量绑定到特定的对象实例上,它的内容不存储在类上,而是存储在每个由类创建的单个对象上。因此实例变量的内容与每个对象实例相关,修改实例变量只会影响对应的对象实例。二、代码解释class...原创 2019-08-29 17:23:48 · 245 阅读 · 0 评论 -
Python高级特性(五)——字典、散列和散列表
一、示例下面是包含着这三种方法的示例代码,先对它们的使用有一个直观的了解:class TestClass: # 实例方法 def method(self): return "instance method called", self # 类方法 @classmethod def class_method(cls): re...原创 2019-09-07 16:07:30 · 287 阅读 · 0 评论