1、对于一个自定义的类,如果实现了 __call__ 方法,那么该类的实例对象的行为就是一个函数,是一个可以被调用(callable)的对象。例如:

class Add:
def __init__(self, n):
self.n = n
def __call__(self, x):
return self.n + x

此时

>>> add = Add(1)
>>> add(4)
5
>>> callable(add)
True

2、 __call__对象是装有字符串的列表对象,他会覆盖 from import * 的默认行为

下面为文件test1.py

__all__ = ['a', 'b']

c = 5
a = 10
def b():
return 'b'

下面为test2.py

from test1 import *

print a
print b
print c

运行结果为

10
<function b at 0x0000000002742278> Traceback (most recent call last):
File "C:/Users/Administrator/Desktop/test.py", line 5, in <module>
print c
NameError: name 'c' is not defined

最新文章

  1. Lua 单例类
  2. 狗扑论坛 自动刷取VIP狗粮
  3. Mac 下 WebStorm 配置go语言开发环境
  4. Java类型擦除机制
  5. js、jquery对于html内容的转义
  6. Matlab单一变量曲线拟合-cftool
  7. CentOS下启动Tomcat
  8. SQL中Len与DataLength区别
  9. Quartus II 11.0 开始使用
  10. 【转】.NET开发者必备的11款免费工具
  11. android 开发随笔 - 开发环境搭建
  12. Hacker(18)----了解Windows系统漏洞
  13. [置顶] 九度笔记之 1434:今年暑假不AC
  14. 分享两个提高效率的AndroidStudio小技巧
  15. Django REST framework基础:版本控制
  16. DBMS客户端是否安装:Make sure DBMS client is installed and this required library is available for dynamic loading
  17. PYTHON-匿名函数,递归与二分法,面向过程编程
  18. 延期版本webstorm(解决许可证过期,注册,激活,破解,码,支持正版,最新可用)
  19. Sqoop与HDFS、Hive、Hbase等系统的数据同步操作
  20. 微信小程序 this.data与this.setData

热门文章

  1. python异常之EOFError: Ran out of input
  2. scrapy框架中选择器的用法
  3. bzoj 4597||洛谷P4340 [Shoi2016]随机序列
  4. thinkPHP--模块分组
  5. Help with Intervals(集合的交并补,线段树)
  6. CSS3基础知识学习
  7. Java基础之入门介绍
  8. 从零开始利用vue-cli搭建简单音乐网站(八)
  9. Azure 项目构建 – 构建直播教学系统之媒体服务篇
  10. java冒泡排序和快速排序代码