擅长:python、mysql、java
<p>如果在Python类中开发函数,可以使用两种方法定义函数:一种是使用self作为第一个参数,另一种是不使用self</p>
<p>那么,这两者有什么不同呢</p>
<h3>具有self</h3>
<p>第一个是方法,它能够访问所创建对象中的内容。这允许您访问单个对象的内部状态,例如某种计数器。这些是使用面向对象编程时通常使用的方法。简短的介绍可以是fund<a href="https://realpython.com/python3-object-oriented-programming/" rel="nofollow noreferrer">here [External Link]</a>。这些方法要求您创建给定类的新实例</p>
<h3>无自我功能</h3>
<p>函数而不初始化类的实例。这就是为什么可以在导入的类上直接调用它们</p>
<h3>替代解决方案</h3>
<p>这是基于Tom K的注释。您也可以使用decorator<code>@staticmethod</code>来指示方法在类中的角色,而不是使用self。可以在<a href="https://stackabuse.com/pythons-classmethod-and-staticmethod-explained/" rel="nofollow noreferrer">here [External link]</a>找到更多信息</p>
<h3>最后的想法</h3>
<p>回答您的初始问题:您不需要使用<code>self</code>。在您的情况下,您不需要self,因为您不共享对象的内部状态。然而,如果您使用类,您应该考虑面向对象的设计</p>