python 类的使用
import pymongo
class Classtest(object):
def __init__(self):
connection = pymongo.MongoClient(host=host, username=username, password=password)
self.db = connection['数据库的名字']
class Human(object):
age=18
def init(self):
self.name = “xiaming” #初始化
self.sex=“男”
def myName(self): #加self区别于普通函数
print ('my name is',self.name)
def myAge(self):
print( 'My age is %d years old.'%self.age)
@staticmethod # 静态方法不能访问类变量和实例变量,也不能使用self
def sayName():
print ("my name is xiaoming")
@classmethod #类方法可以访问类变量,但不能访问实例变量
def classMethod(cs):
print('class age:',cs.age)
p = Human() # 实例化对象
print(‘p.age:’,p.age) # 实例对象调用类变量 p.age: 18
p.age=1
print(p.classMethod(),p.age) # 实例改变类变量,变量只会在实例中改变
‘’’’’’
class age: 18
None 1
‘’’’’’
print(p.age) #1
p.classMethod() #18
print(Human().age) # 类对象调用类变量 18
p.myName() # 实例对象调用类成员函数 my name is xiaming
Human().myAge() # 类对象调用类成员函数 My age is 18 years old.
p.sayName() # 实例对象调用类静态方法 my name is xiaoming
m=Human()
m.sayName() # 多个实例共享此静态方法 my name is xiaoming
Human().sayName() # 类对象调用静态方法 my name is xiaoming
p.classMethod() # 实例对象调用类方法 class age: 18
Human().classMethod() # 类对象调用类方法 class age: 18