dunder 方法是继承的吗?

2023-12-11

如果我定义__getstate__() and __setstate__()在父类中,子类可以继承这些方法吗?有一些相关的讨论这个答案,但仅限于前面带有双下划线 (dunder) 的方法。

一些额外的信息:

  • 我这样做是为了定义我的类的序列化(pickling)行为。
  • Python 2.7

是的,dunder 方法可以很好地继承。从那里的答案来看,链接的文档是保留的标识符类别:

__*__
系统定义的名称。这些名称由解释器及其实现(包括标准库)定义。当前的系统名称在特殊方法名称部分和其他地方讨论。 Python 的未来版本可能会定义更多内容。Any use of __*__在任何上下文中,如果不遵循明确记录的使用,名称可能会在没有警告的情况下被破坏。

这是一个单独的班级 from __* 类私有 names.

链接的其他部分是标识符(名称)这也许更清楚:

当类定义中文本出现的标识符以两个或多个下划线字符开头时并且不以两个或多个下划线结尾,它被认为是一个私人姓名那个班级的。

粗体强调我的;以两个下划线开头并以两个下划线结尾的名称不是类私有 names.

注意both名称的类是继承的(继承是通过在类的 MRO 中查找属性名称来实现的)。名称被破坏并不会阻止它们被继承,这是why名字一开始就被破坏了。通过在这些名称前面加上前缀_ClassName子类可以重复使用该名称并且自动不会发生冲突,因为它们有自己的名称_SubClass prefix.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

dunder 方法是继承的吗? 的相关文章

  • 如何在刻度标签和轴之间添加空间

    我已成功增加刻度标签的字体 但现在它们距离轴太近了 我想在刻度标签和轴之间添加一点呼吸空间 如果您不想全局更改间距 通过编辑 rcParams 并且想要更简洁的方法 请尝试以下操作 ax tick params axis both whic
  • Flask 和 uWSGI - 无法加载应用程序 0 (mountpoint='')(找不到可调用或导入错误)

    当我尝试使用 uWSGI 启动 Flask 时 出现以下错误 我是这样开始的 gt cd gt root localhost uwsgi socket 127 0 0 1 6000 file path to folder run py ca
  • pandas 替换多个值

    以下是示例数据框 gt gt gt df pd DataFrame a 1 1 1 2 2 b 11 22 33 44 55 gt gt gt df a b 0 1 11 1 1 22 2 1 33 3 2 44 4 3 55 现在我想根据
  • 如何等到 Excel 计算公式后再继续 win32com

    我有一个 win32com Python 脚本 它将多个 Excel 文件合并到电子表格中并将其另存为 PDF 现在的工作原理是输出几乎都是 NAME 因为文件是在计算 Excel 文件内容之前输出的 这可能需要一分钟 如何强制工作簿计算值
  • Python tcl 未正确安装

    我刚刚为 python 安装了graphics py 但是当我尝试运行以下代码时 from graphics import def main win GraphWin My Circle 100 100 c Circle Point 50
  • JavaScript 继承;调用和原型

    要在Javascript中实现继承 通常需要执行以下两个步骤 假设我有一个基类 Animal var Animal function name this name name 我现在想从中派生一个子类 Dog 所以我想说 var Dog fu
  • NameError:名称“urllib”未定义”

    CODE import networkx as net from urllib request import urlopen def read lj friends g name fetch the friend list from Liv
  • 在pyyaml中表示具有相同基类的不同类的实例

    我有一些单元测试集 希望将每个测试运行的结果存储为 YAML 文件以供进一步分析 YAML 格式的转储数据在几个方面满足我的需求 但测试属于不同的套装 结果有不同的父类 这是我所拥有的示例 gt gt gt rz shorthand for
  • python 集合可以包含的值的数量是否有限制?

    我正在尝试使用 python 设置作为 mysql 表中 ids 的过滤器 python集存储了所有要过滤的id 现在大约有30000个 这个数字会随着时间的推移慢慢增长 我担心python集的最大容量 它可以包含的元素数量有限制吗 您最大
  • Geopandas 设置几何图形:MultiPolygon“等于 len 键和值”的 ValueError

    我有 2 个带有几何列的地理数据框 我将一些几何图形从 1 个复制到另一个 这对于多边形效果很好 但对于任何 有效 多多边形都会返回 ValueError 请指教如何解决这个问题 我不知道是否 如何 为什么应该更改 MultiPolygon
  • 循环中断打破tqdm

    下面的简单代码使用tqdm https github com tqdm tqdm在循环迭代时显示进度条 import tqdm for f in tqdm tqdm range 100000000 if f gt 100000000 4 b
  • Python - 在窗口最小化或隐藏时使用 pywinauto 控制窗口

    我正在尝试做的事情 我正在尝试使用 pywinauto 在 python 中创建一个脚本 以在后台自动安装 notepad 隐藏或最小化 notepad 只是一个示例 因为我将编辑它以与其他软件一起使用 Problem 问题是我想在安装程序
  • 如何将 PIL 图像转换为 NumPy 数组?

    如何转换 PILImage来回转换为 NumPy 数组 这样我就可以比 PIL 进行更快的像素级转换PixelAccess允许 我可以通过以下方式将其转换为 NumPy 数组 pic Image open foo jpg pix numpy
  • 为美国东部以外地区的 Cloudwatch 警报发送短信?

    AWS 似乎没有为美国东部以外的 SNS 主题订阅者提供 SMS 作为协议 我想连接我的 CloudWatch 警报并在发生故障时接收短信 但无法将其发送到 SMS YES 经过一番挖掘后 我能够让它发挥作用 它比仅仅选择一个主题或输入闹钟
  • Python:计算字典的重复值

    我有一本字典如下 dictA unit1 test1 alpha unit1 test2 beta unit2 test1 alpha unit2 test2 gamma unit3 test1 delta unit3 test2 gamm
  • 对输入求 Keras 模型的导数返回全零

    所以我有一个 Keras 模型 我想将模型的梯度应用于其输入 这就是我所做的 import tensorflow as tf from keras models import Sequential from keras layers imp
  • C++ 继承的内存布局

    如果我有两个类 一个类继承另一个类 并且子类仅包含函数 那么这两个类的内存布局是否相同 e g class Base int a b c class Derived public Base only functions 我读过编译器无法对数
  • 使用基于正则表达式的部分匹配来选择 Pandas 数据帧的子数据帧

    我有一个 Pandas 数据框 它有两列 一列 进程参数 列 包含字符串 另一列 值 列 包含相应的浮点值 我需要过滤出部分匹配列 过程参数 中的一组键的子数据帧 并提取与这些键匹配的数据帧的两列 df pd DataFrame Proce
  • Python - 字典和列表相交

    给定以下数据结构 找出这两种数据结构共有的交集键的最有效方法是什么 dict1 2A 3A 4B list1 2A 4B Expected output 2A 4B 如果这也能产生更快的输出 我可以将列表 不是 dict1 组织到任何其他数
  • Python 分析:“‘select.poll’对象的‘poll’方法”是什么?

    我已经使用 python 分析了我的 python 代码cProfile模块并得到以下结果 ncalls tottime percall cumtime percall filename lineno function 13937860 9

随机推荐

  • 将收到的订单 woocommerce 发送给经销商并发送电子邮件通知

    我有一个电子邮件 经销商 列表 当我在 wp admin 中收到订单时 我需要打开此订单并将此订单发送给经销商 商业 用户 每个经销商都有一封电子邮件 并在已发送给该经销商的自定义字段中标记此订单 在我的 woocommerce 订单页面中
  • Clang 相当于 GCC 的 -mwindows

    我知道如何指示 GCC 使用the mwindows flag 使用以下命令生成 PEIMAGE SUBSYSTEM WINDOWS GUI而不是IMAGE SUBSYSTEM WINDOWS CUI Windows子系统 Clang 提供
  • 如何更改构建配置以便 cmd 指向 python 解释器的实际位置?

    当我尝试通过 Sublime Text 2 运行 python 或任何语言时 它只说 Error 2 The system cannot find the file specified cmd u python u u u C Users
  • datepicker 禁用基于时间的日期

    我的网站上有一个日期选择器 但现在我想禁用基于时间的日期 我想实现两件事 我想禁用今天 用户不应该能够选择今天的日期 每天下午 2 00 后我也想明天禁用 通过jquery可以吗 根据一天中的时间更改 minDate 怎么样 var hou
  • C++ 函数定义和变量声明不匹配?

    考虑这个非常简单的代码 include
  • 如何使用 cypress 从 Mailslurp 中的确认电子邮件中提取链接?

    我试图提取一个链接以使用 Cypress 和 Mailslurp 继续进行用户注册 为此 我编写了以下代码 let inboxId let emailAddress describe sign up gt beforeEach gt cy
  • 从iOS设备通过POST方法将数据插入远程mysql数据库

    我有3个价值观 id name email 我有三个UIText我可以在其中提供这些输入并将这些值保存到远程数据库中的字段 我用GET方法来实现它 我没有问题 但是 如果我想做同样的事情POST方法那么我该怎么做 我认为下面现有的代码会有一
  • 如何模拟 InString[]?

    我发现InString 不适用于MathLink发送输入时的模式EnterExpressionPacket标头 所以我需要定义自己的函数来返回上一个输入行 我开发的一种方法here在某些情况下不起作用 In 1 Unevaluated 2
  • 使用 ggplot2 自动绘制所有 data.table 列的最佳方法

    我正在尝试利用高级技巧data table and ggplot2创建一个简单而强大的函数 自动绘制 在一张图像中 任意的所有列 y data table作为输入列 x 的函数 可选地以列 k 为条件 这样我们就可以使用单行快速可视化所有数
  • 如何使用叠加视图录制视频

    您好 我正在尝试使用叠加录制视频 我已经写了 void addOvelayViewToVideo NSURL videoURL 在录制的视频上添加叠加视图 但它不起作用 我编写了录制视频的代码viewDidLoad using AVCapt
  • 如何将 800x480 5 英寸屏幕分成两部分

    我正在使用 Raspberry Pi 3 model b 构建一个独立的 VR 耳机 我在手机上看到的分割屏幕时遇到问题 我仍在学习 Python 所以我不太了解如何做到这一点 在此代码中 我尝试解决上述问题 但是当我在 Raspbian
  • Context.startForegroundService() 然后没有调用 Service.startForeground

    我的应用程序将调用startForegroundService intent in the onCreate of the MainActivity 我把startForeground ON SERVICE CONNECTION NID n
  • 将对象发送到 WCF 服务。反序列化时超出 MaxStringContentLength(8192 字节)

    我创建了一个简单的 WCF Web 服务 它有一个方法 SubmitTicket flightticket ft string username string password 在客户端 我有一个用于填写表格 机票 并将其发送到这个新创建的
  • MacOS OmniSharp 在 vscode 中超时错误

    今天早上我启动了 vscode 1 13 1 并想用 C dotnet core 编写代码 但我遇到了同样的错误 您可以在 google 中找到该错误 但在当前版本的 OmniSharp 中 Omnisharp 正确地看到了我的项目 但没有
  • 从 Java 调用存储过程

    我正在尝试从我的 Java 应用程序调用 mySQL 存储过程 当我从 mySQL 工作台调用存储过程时 它可以工作 并且根据我发送的参数获得正确的行数 当我尝试从 Java 调用它时 问题就出现了 我没有得到任何结果 也找不到原因 我一直
  • 验证当前经过身份验证的 Windows 用户是否具有委派权限

    鉴于我有一个使用 Windows 身份验证的 WCF 服务 并且我想模拟它们并调用另一个 WCF 服务 如下所示 using ServiceSecurityContext Current WindowsIdentity Impersonat
  • sklearn凝聚聚类:动态更新聚类数量

    sklearn cluster AgglomerativeClustering 的文档提到 当改变集群数量并使用缓存时 计算完整的树可能是有利的 这似乎意味着可以首先计算完整的树 然后根据需要快速更新所需集群的数量 而无需重新计算树 使用缓
  • 分割 ActionBar 中的 withText

    我遇到一个问题 如果ActionItem有图标和文本 并且ActionBar被分割后 即使showAsAction always withText 有没有办法强制显示文字 withText是对系统的一个提示 在宽度受限的设备或配置上 系统可
  • NetBeans 设计视图大小 - 放大/缩小

    快速提问 是否可以放大 缩小 NetBeans 中的 设计 视图 我正在用 Java 制作一个具有固定框架大小的应用程序 我的笔记本电脑是全屏 我在设计视图中看不到整个框架 这有点不方便 我发现可以放大 缩小代码 源视图 的信息 但在设计视
  • dunder 方法是继承的吗?

    如果我定义 getstate and setstate 在父类中 子类可以继承这些方法吗 有一些相关的讨论这个答案 但仅限于前面带有双下划线 dunder 的方法 一些额外的信息 我这样做是为了定义我的类的序列化 pickling 行为 P