摘要: set:是python中的集合类型,元素不能有重复,且元素类型不能是可变类型。元素是无序的。{}代表空字典而不是空集合。要创建一个空集合得用set()函数 x = {42, 'foo', (1, 2, 3), 3.14159} print(x) x = {42, 'foo', [1, 2, 3], 阅读全文
posted @ 2025-01-27 14:12 RolandHe 阅读(4) 评论(0) 推荐(0) 编辑
摘要: python有许多内置异常。比如我们常见的TypeError, AttributeError, ValueError等等。 实际上所有的异常都源自一个基类BaseException。 注意并不是Exception类。我们一般在异常处理时捕获的称之为Concrete exceptions,用Excep 阅读全文
posted @ 2025-01-22 14:06 RolandHe 阅读(16) 评论(0) 推荐(0) 编辑
摘要: collection.Counter类: 一个方便统计对象数量的类,提供了一些方便使用的方法。它是内置dict类的子类,所以也具有dict的绝大部分特性及功能。 我们统计一个列表,元组,等序列时,有时需要统计每种元素出现的次数。 下面示例模拟一个我们自己会实现的方法: word = "mississ 阅读全文
posted @ 2025-01-20 12:25 RolandHe 阅读(10) 评论(0) 推荐(0) 编辑
摘要: namedtuple: 简单理解,就是在普通元组基础上增加了filed,元组中每个元素都对应一个filed。访问元组中元素时可以不用下标,而是用namedtuple.filed这种类似于属性访问的方式来访问元组中的元素。 使用namedtuple的场景一般是我们需要使用一个tuple。但是我们想增加 阅读全文
posted @ 2025-01-17 14:50 RolandHe 阅读(6) 评论(0) 推荐(0) 编辑
摘要: random(): 随机返回0到1之间的浮点数。左闭右开区间。[0,1) random.seed(): 可以传入一个整数或字符串,用于重复生成相同的一组随机数。 import random random.seed(123) print(random.random()) print(random.ra 阅读全文
posted @ 2025-01-13 16:56 RolandHe 阅读(11) 评论(0) 推荐(0) 编辑
摘要: enum模块: python enum模块提供了枚举功能。有些编程语言是内置了枚举类型,但python没有内置,只是用enum模块里的Enum类来实现类似功能。 如果不使用枚举,我们一般会采用定义常量的方式来处理。比如下面代码: RED, GREEN, YELLOW = range(3) 下面演示了 阅读全文
posted @ 2025-01-11 18:24 RolandHe 阅读(13) 评论(0) 推荐(0) 编辑
摘要: Structural Pattern Matching: 翻译过来应该是 结构化的模式匹配。从python 3.10开始提供了match statement。它远比简单的其它语言中的那种switch语句功能强大的多。 通过一个例子来了解一下这种语句的用法。 假设我们有一个函数,用来区分用户做的操作, 阅读全文
posted @ 2025-01-08 20:44 RolandHe 阅读(9) 评论(0) 推荐(0) 编辑
摘要: python通过dataclasses模块提供了dataclass(数据类)对象,适合我们想定义一些类,并且让他们主要用于存放数据。 dataclass: 是一个函数,用做装饰器,把一个类变成数据类。 数据类可以让我们通过简单的方法定义实例属性以及对其赋值,并使用类型提示标明其类型。 通过一些元类的 阅读全文
posted @ 2024-12-31 11:49 RolandHe 阅读(46) 评论(0) 推荐(0) 编辑
摘要: in 操作符:也叫成员检测符。 item in obj, 返回True或False。 obj需要是一个可迭代对象(iterable), 或者实现了__contains__方法的自定义类。 def gen_fun(): yield 1 yield 2 yield 3 print(3 in [1,2,3 阅读全文
posted @ 2024-12-28 20:11 RolandHe 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 可迭代对象(iterable): 一般像list, tuple, dictionary这种,内部需要实现__iter__方法,该方法用于创建一个迭代器。 迭代器(iterator): 由可迭代对象创建,在for循环刚开始时自动创建,也可以通过iter(iterable)内置函数来创建。 其内部需要实 阅读全文
posted @ 2024-12-25 18:40 RolandHe 阅读(10) 评论(0) 推荐(0) 编辑