---恢复内容开始---
首先这两天接触到了class这个词,格式如下
class Person: #类的开头字母要大写
静态变量 = '值' #这个变量是共用的
def __init__(self):
内部属性
调用的时候,先看内部属性是否有,若无则去静态变量里面找
当需要让class中的函数改变静态变量的值时,需要用类名.变量名称的方法,如:
class Person:
money = 0
def __init__(self,name):
self.name = name
Person.money += 10000
或者可以这样:
class Person:
money = [0]
def __init__(self,name):
self.name = name
Person.money[0] += 10000 #注意此处的Person.money[0]的0是索引,而上面的money[0]是list中的元素0
这样就可以实现对静态变量的改变。
此处涉及命名空间以及作用域的问题,用图片说明最为直观。如下程序
class Person:
money = 0
def __init__(self,name,age,sex):
self.name = name
self.age = age
self.sex = sex
def speak(self):
print('balabala')
有点丑但起码表明了关系。