我对python比较陌生。让我举个例子:
我创建了名为“person”的类对象
class person:
name = ""
age = ""
phones = []
def add_phone(self, number):
self.phones.append(number)
让我们准备一些数据以供以后使用:
names = ["jhon", "tony", "mike", "peter"]
ages = [34, 36, 23, 75]
phones = [7676, 7677, 7678, 7679]
让我们进入一个for循环:
for i in range(0,4):
new_person = person()
据我了解,每次执行前一行时,都会创建一个新对象 person 并称为 new_person,并且前一次迭代中变量 new_person 中的任何对象都应该被销毁。然而,这种情况并非如此:
new_person.name = names[i]
new_person.age = ages[i]
new_person.add_phone(phones[i])
print "i= " + str(i)
print "name= "+ new_person.name
print "age= "+ str(new_person.age)
print "phones:"
print new_person.phones
new_person.phones
包含我们在之前的迭代中添加的电话。有人看到我错过了什么吗?这是否意味着对象类“人”的行为就像一个单身人士?