- 博客(11)
- 收藏
- 关注
原创 【Python进阶】映射类型及其继承关系解析
通过理解 Python 中的映射类型及其继承关系,我们不仅能够更好地理解 dict、OrderedDict、defaultdict 等类型的功能差异,还能在类型提示中更加精准地表达我们希望接受的类型。这种理解能够帮助我们在代码中严格区分不同类型的映射,避免不必要的错误,并提高代码的可读性和可维护性。
2024-11-29 14:40:32
1102
原创 【Python进阶】隐式接口检查与 isinstance 的机制解析
isinstance 只是检查对象是否是某个类或其子类的实例,它并不关心类的方法实现。abc.Collection 等抽象基类通过__subclasshook__方法来隐式检查一个类是否实现了符合接口要求的方法(如__contains__() 和__len__())。这种方法检查由抽象基类(例如 abc.Collection)实现,而不是 isinstance 自身。isinstance 会利用这些检查来判断一个对象是否符合某个类型的要求。
2024-11-25 09:00:00
947
原创 【Python进阶】为何使用isinstance检查抽象基类接口比直接检查dict类型更优
这段话的核心意思是,通过抽象基类(例如 Mapping)和 isinstance 来测试对象是否实现了某个接口,比直接检查对象是否是某个具体类型(如 dict)更具灵活性。因为实现了特定接口的对象不仅限于某个具体类型,使用抽象基类可以让你更普遍地检查对象的接口,而不局限于某种实现类型。例如,代码中的自定义类 MyMapping,虽然它不是 dict 类型,但它实现了字典的行为,使用 Mapping 抽象基类就能让你正确识别它是一个符合字典接口的对象。Mapping 是 dict 的父类。
2024-11-22 10:05:41
862
原创 【Python进阶】具名元组NamedTuple与dataclasses模块
本文分别介绍了具名元素NamedTuple和dataclasses类的功能和使用,对比了两者的区别和优缺点。
2024-09-27 08:00:00
1060
原创 【python进阶】基类、元类以及一些相关的概念如抽象类和接口
在面向对象编程中,有几个重要的概念涉及类和类的定义方式:基类、元类以及一些相关的概念如抽象类和接口,本文将一一介绍它们。
2024-08-08 17:05:27
1639
1
原创 python实现Savitzky-Golay平滑与Whittaker平滑,附加平均绝对误差、均方根误差、相关系数三种评判指标。
代码:调用sklearn.metrics中的mean_absolute_error函数。代码:调用sklearn.metrics中的mean_squared_error函数。使用python实现很简单,只需要调用savgol_filter函数即可。代码:调用numpy中的corrcoef函数。
2024-03-13 11:19:33
847
原创 【Lua】可变长度参数
在 Lua 中,可变长度参数是一种特殊的参数形式,允许函数接受不定数量的参数。在函数定义时,使用"…"(三个点)表示可变长度参数。在上面的示例中,sum 函数使用了可变长度参数 …。在函数体内部,我们使用 ipairs({…}) 来遍历传递给函数的所有参数,并将它们相加得到总和。通过使用可变长度参数,可以方便地处理不确定数量的参数,使函数更加灵活和通用。注意,可变长度参数只能出现在参数列表的最后。
2024-01-25 10:41:16
621
原创 【python】类的继承、多继承、重写、同名方法调用、super()
在子类的 method 方法中,我们通过 super().method() 调用了父类的 method 方法,并在之后添加了子类特定的逻辑。如果多个父类中存在相同的方法名,则会按照方法解析顺序,依次从左到右查找,直到找到第一个匹配的方法为止。通过使用 super().method_name(),可以保证调用的是父类的方法而不是子类的重写方法。在多继承中,当继承的父类中都有一个名字相同的方法,当子类实例调用这个方法时,使用的是方法解析顺序(Method Resolution Order,MRO)。
2024-01-17 11:20:28
1482
原创 Django GET /statics/plugins/bootstrap-3.4.1/dist/css/bootstrap.css HTTP/1.1“ 404
报错为:获取不到插件将代码改为:就可以运行了。
2023-11-30 10:34:56
820
原创 【python】使用h5py库对HDF文件进行处理
本文主要介绍使用python中的h5py库对HDF格式的文件进行简单的读取和创建新的HDF文件的方法。
2023-11-21 10:59:23
1364
空空如也
cartopy自动下载包,超时报错问题
2024-08-14
Basemap画地图时,南极洲只画了一半
2024-06-24
关于#javascript#的问题:为什么console.log(GraphQL Server running at :${port}${server.graphqlPath})语句后没有结束符"
2024-05-30
使用pip更新multiprocessing时报错
2024-02-29
import spaces报错
2024-02-29
lua中字符串实例方法的使用问题
2024-01-29
Lua变量与库重名问题
2024-01-29
Lua函数的可变长参数问题
2024-01-03
TA创建的收藏夹 TA关注的收藏夹
TA关注的人