python反射

原创 2018年04月17日 13:50:36

反射就是以字符串的方式倒入模块,以字符串的方式查找、获取模块。

目录结构:


test1.py

def f1():
    return "f1"

def f2():
    return "f2"

def f3():
    return "f3"

def f4():
    return "f4"

在test2中需要引用的话,可以用如下方式:

import sys
class_name = "myreflect.test1"
aa = __import__(class_name)
print aa
print aa.test1.f1()

或者

import sys
class_name = "myreflect.test1"
aa = __import__(class_name,fromlist = True)
print aa.f1()

fromlist不设置默认为False,只会导入第一层。


获取模块如下:

import sys

import_str="myreflect.test1"
aa = __import__(import_str, fromlist=True)
bb = sys.modules["myreflect.test1"]
print bb.f2()


版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zt3032/article/details/79973711

Python-反射的用法

在做程序开发中,我们常常会遇到这样的需求:需要执行对象里的某个方法,或需要调用对象中的某个变量,但是由于种种原因我们无法确定这个方法或变量是否存在,这是我们需要用一个特殊的方法或机制要访问和操作这个未...
  • y472360651
  • y472360651
  • 2017-06-15 12:22:25
  • 1018

python基础-对象_类反射、模块反射

getattr 对象获取 类获取 setattr 设置类属性方法 设置对象属性方法 模块反射 反射本模块函数变量python面向对象中的反射:通过字符串的形式操作对象相关的属性。python中的一切事...
  • u013210620
  • u013210620
  • 2017-11-24 19:56:14
  • 376

python使用反射机制实例化对象

之前在做数据解析的时候,发现不同类别的数据解析的流程是一样的,只不过每次去查询获取数据的时候表不相同,为了代码能够简洁一些,想到了先创建一个父类A,每个数据类别对应一个A的子类,在子类中实现数据查询的...
  • lom9357bye
  • lom9357bye
  • 2018-01-19 22:06:44
  • 194

python中的反射和自省

本文主要介绍python中的反射和自省,以及该机制的简单应用熟悉JAVA的程序员,一定经常和Class.forName打交道。即使不是经常亲自调用这个方法,但是在很多框架中(Spring,eclips...
  • lokibalder
  • lokibalder
  • 2008-12-06 14:05:00
  • 22764

python3.4 实现java反射功能

环境: 操作系统;windows10+python版本:3.4 原因: 最近在看head first设计模式,其中工厂模式中各种if else看着不爽 目标: 实现java反射功能,即根据参...
  • ldg513783697
  • ldg513783697
  • 2017-11-21 21:54:20
  • 210

Python 反射机制(二)

一个面试题: 现有一个对象A和一个变量B,B的值是A的一个属性的名字,如何利用B修改A的那个属性?请参考下面代码。 class C:    def __init__(self):     ...
  • bytxl
  • bytxl
  • 2015-08-05 17:53:25
  • 1882

Python之自省(反射)

原文地址:http://www.cnblogs.com/huxi/archive/2011/01/02/1924317.html 首先通过一个例子来看一下本文中可能用到的对象和相关概念。 ...
  • qq_37482544
  • qq_37482544
  • 2017-04-25 10:32:05
  • 363

python的反射机制

获得对象使用__import__方法 获得对象的属性和方法使用getattr()方法 注意点: 1. 如下例子中, 'home.cates'文件夹下有'LoginError.py'文件, 文件包含...
  • oloop
  • oloop
  • 2014-03-05 10:24:02
  • 4941

Python自省(反射) 与 inspect 模块

来源:https://my.oschina.net/taisha/blog/55597 inspect模块主要提供了四种用处: (1) 对是否是模块,框架,函数等进行类型检查。 (2) 获取源码 (...
  • freeking101
  • freeking101
  • 2016-09-07 13:21:34
  • 1139

python中反射4种方法的基本使用

class Foo(object): def __init__(self): self.name = "laozhang" def func(self): ...
  • longdreams
  • longdreams
  • 2017-10-09 19:49:27
  • 100
收藏助手
不良信息举报
您举报文章:python反射
举报原因:
原因补充:

(最多只允许输入30个字)