類屬性(公有屬性)memcached
私有屬性函數
對象的公有屬性.net
對象的私有屬性rest
內置屬性code
函數的局部變量對象
全局變量ip
class MyClass(object): var1 = "類的公有屬性" __var2 = "類的私有屬性" def func1(self): self.var3 = "對象的公有屬性" self.__var4 = "對象的私有屬性" var5 = "函數的局部變量" mc = MyClass() print mc.var1 print mc._MyClass__var2 mc.func1() print mc.var3
class MyClass(object): name = 'test' def __init__(self): self.func1() self.__func2() self.classFun() self.staticFun() print "-"*20 def func1(self): print self.name print "我是公有方法" self.__func2() def __func2(self): print self.name print "我是私有方法" @classmethod def classFun(self): print self.name print "我是類方法" [@staticmethod](https://my.oschina.net/staticmethod) def staticFun(): print MyClass.name print "我是靜態方法" mc = MyClass() mc.func1() MyClass.classFun() #加上@classmethod就能夠經過類調用 MyClass.staticFun() #加上[@staticmethod](https://my.oschina.net/staticmethod) ,注意沒有self參數,須要經過類來調用
test 我是公有方法 test 我是私有方法 test 我是私有方法 test 我是類方法 test 我是靜態方法 -------------------- test 我是公有方法 test 我是私有方法 test 我是類方法 test 我是靜態方法
import sys class Process(object): '''memcached rc script''' def __init__(self,name,program,args,workdir): self.name = name self.program = program self.args = args self.workdir = workdir #類在實例化的時候要傳的幾個參數 def start(self): pass def stop(self): pass def restrat(self): self.stop() self.start() def status(self): pass def help(self): pass def main(): name = "memcached" prog = "/usr/bin/memcached" args = "-u nobody -p 11211 -c 1024 -m 64" wd = "/var/tmp/memcached" pm = Process(name = name,program = prog,args = args,workdir = wd) try: cmd = sys.argv[1] except IndexError,e: print "Options error" sys.exit() if cmd == 'start': pm.start() elif cmd == 'stop': pm.stop() elif cmd == 'restart': pass else: pm.help()