我在某个地方读到__init__
在创建对象时存储信息。所以,假设我有这个代码:
class BankAccount(object):
def __init__(self, deposit):
self.amount = deposit
def withdraw(self, amount):
self.amount -= amount
def deposit(self, amount):
self.amount += amount
def balance(self):
return self.amount
myAccount = BankAccount(16.20)
x = raw_input("What would you like to do?")
if x == "deposit":
myAccount.deposit(int(float(raw_input("How much would you like to deposit?"))))
print "Total balance is: ", myAccount.balance()
elif x == "withdraw":
myAccount.withdraw(int(float(raw_input("How much would you like to withdraw?"))))
print "Total balance is: ", myAccount.balance()
else:
print "Please choose 'withdraw' or 'deposit'. Thank you."
__init__
在做什么或在存储什么。我不明白”自身金额“是或如何使它=存款做任何事。是“自身金额“在__init__
下面和{
在Python中,^{} 是在创建类的实例时调用的方法。此方法通常用于初始化实例变量。初始化后,可以在其他方法中使用它们。在
关于
self.amount
,它是一个实例变量(也有类变量)。换句话说就是一种属性。在你的类是
BankAccount
,每个银行账户都应该有一个金额。这时实例变量就变得有用了!在创建实例时
调用}。在
__init__()
方法(您可以通过在里面放一个print
来看到这一点),它将用16.20
设置{从你的问题来看,我认为你对面向对象编程(OOP)还不熟悉。 我建议阅读一下它,以及它是如何在Python中实现的。 这里有一个简短的起点:http://www.tutorialspoint.com/python/python_classes_objects.htm
然后你可以随意搜索你在那里学到的新概念。在
简言之,要直截了当地回答问题:
self
__init__
是构造函数的名称所以在Python中,当您调用
myAccount.deposit(10)
时,可以说它等价于BankAccount.deposit(myAccount, 10)
。因此,是的,self
变量在您的四个方法中都是“相同的”,并且在您的示例中,它被赋值为myAccount
。在Q什么是
__init__
在做什么或存储什么?在无论何时构造类的实例,都会调用
__init__
。这适用于所有类别。通常在这个函数中初始化所有数据。在您的特定情况下,您将创建一个名为amount
的成员数据,并将其赋值为与传递给函数的deposit
参数相同的成员数据。在Q我不明白
"self.amount"
是什么,也不知道如何使它= deposit
起作用。在A语句
self.amount = deposit
完成了几件事情。它创建一个名为amount
的类的成员数据,并将其赋值为deposit
的值。在Q在
__init__
下的"self.amount"
是否与撤销下的相同?在A是的。在
我只是不明白
"self.amount"
的作用。在A它允许您捕获对象的数据。每个类都需要找出正确工作所需的成员数据。在您的例子中,您只需要
amount
。如果有一个名为Employee
的类,它可能看起来像:相关问题 更多 >
编程相关推荐