当前位置: 首页 > 知识库问答 >
问题:

在Python中对等的JavaBean

柴飞星
2023-03-14

我对使用Python作为OOP相当陌生。我来自Java背景。您将如何用Python编写javabean的等价物?基本上,我需要一个类:

    null

共有1个答案

邹弘
2023-03-14

因为Python不是Java。最有可能的是,您应该编写一个不那么简单的类,构造一个namedtuple,传递一个字典,或者类似的东西。但要回答这个问题:

  1. serializable和“实现接口”在Python中都没有意义(嗯,在一些框架和高级用例中有意义,但在这里没有)。序列化模块,如pickle,无需实现或继承任何特殊的内容(您可以用其他方式定义流程,但几乎不需要)。
  2. 你不写getter和setter。您只需使用公共属性。如果以后需要一个非常重要的getter/setter,可以透明地将其转换为属性
  3. 不需要虚拟构造函数,除非您想要创建属性并为它们设置默认值。但这可能是个坏主意(对于bean类来说),因为不给这些属性赋值很可能是错误的,即使不赋值也是可疑的。因此,只需让Python为您捕捉这些错误(当访问不存在的属性时,它将引发attributeError)。
 类似资料:
  • Python中是否有类似于R中dput()函数的函数?

  • 问题内容: 编写自定义类时,通过和运算符允许等效性通常很重要。在Python中,这可以通过分别实现和特殊方法来实现。我发现执行此操作的最简单方法是以下方法: 你知道这样做更优雅的方法吗?你知道使用上述 比较方法有什么特别的缺点吗? 注意:需要澄清的一点-当和未定义时,你会发现以下行为: 也就是说,评估为False因为它确实运行了,所以对身份进行了测试(即“ a与b?是同一对象”)。 当和定义,你会

  • 我正在尝试让一个简单的主机/客户端传输工作。我遵循了一个教程,服务器正常运行,但当客户端尝试连接时,它返回“由对等端重置连接”我真的不知道错误在哪里。

  • 我正在使用Python,并在给定端口上侦听UDP数据包,一切似乎都很好地工作-但经过较长时间后,脚本崩溃,出现以下错误: 当重新启动脚本时,相同的崩溃会在较短的时间后再次发生。相反,重新启动服务器似乎可以再次完全解决问题。 关于插座方面的事情,我正在做: 我是否遗漏了一些显而易见的东西,或者只是有一个简单的方法来避免这种情况? 提前感谢您提供的任何信息! 本吉

  • 问题内容: 各种Python指南都说使用代替。这是为什么?相等用于比较值,因此自然而然地询问是否具有用和表示的值。有人可以解释为什么是首选形式,并举例说明两者没有给出相同答案的例子吗? 谢谢。 问题答案: 人们使用的原因是因为使用没有优势。可以编写比较等于的对象,但这并不常见。 输出: 该运营商也快,但我不认为这确实非常重要。

  • 问题内容: 基于Java的Mahout的 目标是建立可扩展的机器学习库。Python中是否有任何等效的库? 问题答案: 强烈推荐scikits学习http://scikit-learn.sourceforge.net/