Python的类和函数的魔法
class CustomClass:
def customFun(self, id):
print("fun_1",id ) if __name__ == '__main__':
# 类的实例化
classOne =CustomClass()
# 类的函数
classFuns = [CustomClass.customFun]
# 传统的函数调用方式为: 通过类的实例化对象 调用 函数
# 非传统的函数调用方式 :调用类的函数,参数传递:类的实例化对象,函数的参数
classFuns[0](classOne, "name") # classDemo对类CustomClass的另类持有
classDemo = CustomClass
objOneDemo = classDemo()
objOneDemo.customFun("name_1") fun_1 = objOneDemo.customFun
fun_1("name_2")
Python的类和函数的魔法的更多相关文章
- python用类装饰函数的一个有趣实现
		
class RunningLog: def __init__(self,func): self._func=func self._func_name = func.__name__ def __cal ...
 - python进阶之内置函数和语法糖触发魔法方法
		
前言 前面已经总结了关键字.运算符与魔法方法的对应关系,下面总结python内置函数对应的魔法方法. 魔法方法 数学计算 abs(args):返回绝对值,调用__abs__; round(args): ...
 - python:类3——魔法方法
		
一.魔法方法特点 被双上下滑线包围 魔法方法是面向对象的Python的一切,如果你不知道魔法方法,说明你还没能意识到面向对象的Python的强大(不是说Python脚本) 通过对制定方法的重写,完全可 ...
 - 面向对象相关概念与在python中的面向对象知识(魔法方法+反射+元类+鸭子类型)
		
面向对象知识 封装 封装的原理是,其成员变量代表对象的属性,方法代表这个对象的动作真正的封装是,经过深入的思考,做出良好的抽象(设计属性时用到),给出“完整且最小”的接口,并使得内部细节可以对外透明( ...
 - Python基础(二十一):面向对象“类”第四课——魔法方法
		
先划一下重点: 6个魔法方法: 动态操作属性的4个函数: 魔法方法 魔法方法的简单介绍 魔法方法的命名规则:方法名(前后各有2个下划线). 通常情况下,不会主动去调用魔法方法,而是在满足一定的条件下, ...
 - python 类成员函数
		
http://cowboy.1988.blog.163.com/blog/static/75105798201091141521583/ 这篇文章总结的非常好 主要注意的地方是 1,在类内调用成员函数 ...
 - 1.面向过程编程 2.面向对象编程 3.类和对象 4.python 创建类和对象 如何使用对象 5.属性的查找顺序 6.初始化函数 7.绑定方法 与非绑定方法
		
1.面向过程编程 面向过程:一种编程思想在编写代码时 要时刻想着过程这个两个字过程指的是什么? 解决问题的步骤 流程,即第一步干什么 第二步干什么,其目的是将一个复杂的问题,拆分为若干的小的问题,按照 ...
 - Python类属性访问的魔法方法
		
Python类属性访问的魔法方法: 1. __getattr__(self, name)- 定义当用户试图获取一个不存在的属性时的行为 2. __getattribute__(self, name)- ...
 - Python进阶----线程基础,开启线程的方式(类和函数),线程VS进程,线程的方法,守护线程,详解互斥锁,递归锁,信号量
		
Python进阶----线程基础,开启线程的方式(类和函数),线程VS进程,线程的方法,守护线程,详解互斥锁,递归锁,信号量 一丶线程的理论知识 什么是线程: 1.线程是一堆指令,是操作系统调度 ...
 
随机推荐
- PHP采集库-Snoopy.class.php
			
Snoopy是一个php类,用来模拟浏览器的功能,可以获取网页内容,发送表单. Snoopy的特点: 1.抓取网页的内容 fetch 2.抓取网页的文本内容 (去除HTML标签) fetchtext ...
 - 【Android】3.23 示例23--瓦片图功能
			
分类:C#.Android.VS2015.百度地图应用: 创建日期:2016-02-04 一.简介 地图SDK自v3.6.0起,新增瓦片图层(tileOverlay), 该图层支持开发者添加自有瓦片数 ...
 - SourceInsight-查看java中接口对应的实现类
			
1.双击选中需要查看的接口名称,然后右击选择“Show in Relation Window” 2.然后在右侧会弹出一个Relation的窗口 如果没有列出对应的实现类,可以在接口名上再次右击,依次选 ...
 - 使用Scala编写Spark程序求基站下移动用户停留时长TopN
			
使用Scala编写Spark程序求基站下移动用户停留时长TopN 1. 需求:根据手机基站日志计算停留时长的TopN 我们的手机之所以能够实现移动通信,是因为在全国各地有许许多多的基站,只要手机一开机 ...
 - 初始化git linux上传文件常见问题
			
SSH生成id_rsa, id_rsa.pub后,连接服务器却报: Agent admitted failure to sign using the key 错误. 解决方法: 在当前用户下执行命令: ...
 - 进制转化之递归 && 栈
			
将10进制转换成2进制,是除以2得到的余数,再倒序排列,这可以用递归实现,也可以用数据结构——栈实现. 先看递归实现: #include<stdio.h> void to_two(int ...
 - c++多态之——vptr指针
			
之前做过一个测试,在一个类中定义一个virtual修饰的函数时,sizeof这个类,发现类的大小多了恰好一个指针的字节大小,当初不明白,只是记住有这么一个特性.后来,发现它就是c++编译器给我们添加的 ...
 - java命令行打war
			
java命令行打war(windows下) 切换到需要打包文件夹low的上级目录>jar -cfM legendwealth.war -C low .
 - js获取checkbox值的方法
			
js获取checkbox值的方法.分享给大家供大家参考.具体实现方法如下:<html> <head> <meta http-equiv="Content-Typ ...
 - 【WPF】动态设置Binding的ConverterParameter转换器参数
			
问题:XAML中,想要在一个Bingding语句中再次Bingding. Source="{Binding Path=Image,Converter={StaticResource UMat ...