码迷,mamicode.com
首页 > 编程语言 > 详细

python反射

时间:2016-05-19 06:48:48      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:python 反射

1.hasattr和getattr

#!/usr/bin/env python
#-*- coding:utf-8 –*-
import sys

class WebServer(object):
    def __init__(self,host,port):
        self.ip = host
        self.port = port

    def start(self):
        print("start server..")

    def stop(self):
        print("stop server..")

    def restart(self):
        self.stop()
        self.start()

if __name__ == ‘__main__‘:
    server = WebServer("localhost",333)
    if hasattr(server,sys.argv[1]):
        func = getattr(server,sys.argv[1])
        func()


2.setattr

#!/usr/bin/env python
#-*- coding:utf-8 –*-
import sys

class WebServer(object):
    def __init__(self,host,port):
        self.ip = host
        self.port = port

def test_run(name):
    print("running...",name)


if __name__ == ‘__main__‘:
    server = WebServer("localhost",333)
    setattr(server,"run",test_run)
    server.run("jack")


3.delattr

import sys

class WebServer(object):
    def __init__(self,host,port):
        self.host = host
        self.port = port

    def test_run(name):
        print("running...",name)


if __name__ == ‘__main__‘:
    server = WebServer("localhost",333)
    delattr(server,‘port‘)








本文出自 “AMY” 博客,请务必保留此出处http://amy2015.blog.51cto.com/11407620/1774912

python反射

标签:python 反射

原文地址:http://amy2015.blog.51cto.com/11407620/1774912

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!