擅长:python、mysql、java
<p>举个小例子</p>
<pre><code>class Dog:
def __init__(self):
def bark():
print("Woof!")
</code></pre>
<p>这是一个有效的Python,工作正常,但不是您想要的。
函数<code>bark</code>只存在于<code>__init__</code>函数的范围内,您可以将其视为类<code>Dog</code>的构造函数。为了让狗吠叫,你必须这样做。你知道吗</p>
<pre><code>class Dog:
def __init__(self):
def bark():
print("Woof!")
bark()
</code></pre>
<p>对你来说,我想你是故意的。你知道吗</p>
<pre><code>class User:
def __init__(self):
# set this first in case the user
# tries to `get` before setting
self.first_name = ''
def set_first_name(self, name):
self.first_name = name
def get_first_name(self):
return self.first_name
</code></pre>
<p>注意,python的惯例是使用snake case而不是camel case。如果您关心该领域的最佳实践,我也会在<a href="https://stackoverflow.com/questions/6618002/using-property-versus-getters-and-setters">python @property vs getters and setters</a>上查看这篇文章!你知道吗</p>