selfPython 中这个词的目的是什么?我理解它指的是从该类创建的特定对象,但我不明白为什么它明确需要作为参数添加到每个函数.为了说明,在Ruby中我可以这样做:
class myClass
def myFunc(name)
@name = name
end
end
Run Code Online (Sandbox Code Playgroud)
我很容易理解.但是在Python中我需要包括self:
class myClass:
def myFunc(self, name):
self.name = name
Run Code Online (Sandbox Code Playgroud)
谁能跟我说说这个?这不是我在(无可否认的有限)经历中遇到的事情.
我无法理解类的初始化.
它们有什么意义,我们如何知道它们包含哪些内容?在类中编写需要不同类型的思考而不是创建函数(我想我可以创建函数,然后将它们包装在一个类中,这样我就可以重用它们.这会起作用吗?)
这是一个例子:
class crawler:
# Initialize the crawler with the name of database
def __init__(self,dbname):
self.con=sqlite.connect(dbname)
def __del__(self):
self.con.close()
def dbcommit(self):
self.con.commit()
Run Code Online (Sandbox Code Playgroud)
或者另一个代码示例:
class bicluster:
def __init__(self,vec,left=None,right=None,distance=0.0,id=None):
self.left=left
self.right=right
self.vec=vec
self.id=id
self.distance=distance
Run Code Online (Sandbox Code Playgroud)
__init__在尝试阅读其他人的代码时遇到了很多类,但我不了解创建它们的逻辑.
可能重复:
Python'self'关键字
请原谅我,如果这是一个令人难以置信的noobish问题,但我从来没有在Python中理解自我.它有什么作用?当我看到类似的东西时
def example(self, args):
return self.something
Run Code Online (Sandbox Code Playgroud)
他们在做什么?我想我也在某个功能中看到了args.请以简单的方式解释:P