python基础补漏-09-反射】的更多相关文章

一.反射 最近接触到python的反射机制,遂记录下来已巩固.但是,笔者也是粗略的使用了__import__, getattr()函数而已.目前,笔者的理解是,反射可以使用户通过自定义输入来导入响应的module.class等.下面以一个例子说明. 文件目录如下, reflection文件夹下有Car module,现在main.py下通过反射机制导入Car module. Car.py源码如下: class Car(object): def __init__(self, name, color…
1)反射是通过字符串方式映射内存中的对象. python中的反射功能是由以下四个内置函数提供:hasattr.getattr.setattr.delattr, 改四个函数分别用于对对象内部执行:检查是否含有某成员.获取成员.设置成员.删除成员.  注意:类的反射不能使用类的私有方法 # -*- coding:utf-8 -*- __author__ = 'shisanjun' class Foo(object): def __init__(self): self.name="s" de…
对编程语言比较熟悉的朋友,应该知道“反射”这个机制.Python作为一门动态语言,当然不会缺少这一重要功能.然而,在网络上却很少见到有详细或者深刻的剖析论文.下面结合一个web路由的实例来阐述python的反射机制的使用场景和核心本质. 一.前言 ? 1 2 3 4 5 def f1():   print("f1是这个函数的名字!")    s = "f1" print("%s是个字符串" % s) 在上面的代码中,我们必须区分两个概念,f1和“…
面向对象编程之反射 反射 定义:通过字符串对对象的属性和方法进行操作. 反射有4个方法,都是python内置的,分别是: hasattr(obj,name:str) 通过"字符串"判断对象的属性或方法是否存在.返回bool值,True表示有,False表示没有. 注意:查询方法时,只需写方法名,不要加小括号!!! class User: def __init__(self, name, age, gender): self.name = name self.age = age self…
JSON/Pickle: 首先我们要明白 什么事序列化--> 就是进行不同程序之间的数据交换 那JSON 和Pickle是什么鬼... 就是不同的方式而已 import json name = { 'roic':[22,'boy'] } res_name = json.dumps(name) row_name = json.loads(res_name) print name,res_name ,row_name Pickle :几乎能序列化所有的python数据格式 当然pickle 不像 j…
1> sys 模块 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0) sys.version 获取Python解释程序的版本信息 sys.maxint 最大的Int值 sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 sys.platform 返回操作系统平台名称 sys.stdout.write('please:') val = sys.stdin.readline()[:-1] 2 >…
----lambda 首先我们说,很遗憾 在python中lambda 仅仅只是一个表达式 那么如何去使用呢? 这个是lambda最简单的使用方式  一般跟map一起配合使用 --map (fun,list) 把list的参数,一次次的放到函数fun中执行 那么我们可以写 map(lambda x:x*10,[1,2,3]) see 是不是很简单 --filter 过滤 用法跟map一毛一样 不同的是 >>>a=[1,2,3,4,5,6,7]>>>b=filter(la…
函数:一般来说就是 以功能划分的代码模块 [1] 内置函数 一般我们使用的模块 ---可以大概有个了解 大多数的用法都很简单 2 [函数返回值] 我们应该控制函数的每条分支. 也就是说 我们得到的函数执行完之后的信号,就是其中一条分支的结果 在python中 通过return 关键字 返回一个对象 3[参数] value -参数就是值 我们说的穿参 就是传值 那么实参跟形参的差别.就是在不同的函数空间的不同值 实参我们通常指的是全局空间的参数 形参通产指的是函数空间所使用的参数 那么python…
collection系列 [1]计数器 Counter import collections res = collections.Counter("34234sdfgs45tsaf1") print res 我们给这个对象穿了一个字符串对象 . 他会统计 这个字符串对象 每个组成在字符串中出现的次数. --most_common 最少出现3次的 =======================================================================…
python对象的方法 1.python的特性:一切皆对象 2 type(obj) 查看对象的类型 3 dir(obj)查看类中所有详细的功能 4 help(obj) 查看类中所有详细的功能 类中的方法: __fun__:内置方法 可能有多钟致执行方法 fun:只有一种执行方法 obj.fun() -------------------- 字符串好用的方法: str = "my name is  what" str.cout('m',0,2)  ---字符串从下标 0到2 之间的字符…