python中__call__方法示例分析

 更新时间:2014年10月11日 15:21:45   投稿:shichen2014  
这篇文章主要介绍了python中__call__方法示例分析,较为详细的分析了python中__call__方法的用法,需要的朋友可以参考下

本文实例讲述了python中__call__方法的用法,分享给大家供大家参考。具体方法分析如下:

Python中的__call__允许程序员创建可调用的对象(实例),默认情况下, __call__()方法是没有实现的,这意味着大多数实例是不可调用的。然而,如果在类定义中覆盖了这个方法,那么这个类的实例就成为可调用的。

test.py文件如下:

#!/usr/bin/python
# Filename:test.py
 
class CallTest():
  def __init__(self):
    print 'init'
 
  def __call__(self):
    print 'call'
 
call_test = CallTest()

执行结果:
没有重写__call__:

>>> from test import CallTest
init
>>> t = CallTest()
init
>>> callable(t)
False
>>> t()
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
AttributeError: CallTest instance has no __call__ method
>>>

重写__call__:

>>> from test import CallTest
init
>>> t = CallTest()
init
>>> callable(t)
True
>>> t()
call
>>>

希望本文所述对大家的Python程序设计有所帮助

相关文章

  • Python log模块logging记录打印用法解析

    Python log模块logging记录打印用法解析

    这篇文章主要介绍了Python log模块logging记录打印用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • Python爬虫与防反爬虫策略从入门到实战

    Python爬虫与防反爬虫策略从入门到实战

    本文将从基础的爬虫原理和库介绍开始,逐步深入,通过实际示例代码,带领读者学习Python爬虫的使用和技巧,掌握从简单到复杂的爬虫实现
    2024-01-01
  • Python二叉树的定义及常用遍历算法分析

    Python二叉树的定义及常用遍历算法分析

    这篇文章主要介绍了Python二叉树的定义及常用遍历算法,结合实例形式分析了基于Python的二叉树定义与先序、中序、后序、层序等遍历方法,需要的朋友可以参考下
    2017-11-11
  • 关于Python去除字符串中空格的方法总结

    关于Python去除字符串中空格的方法总结

    用Python处理字符串时会经常要去掉字符串首、尾或者中间的空白,以得到我们想要的结果,下面这篇文章主要给大家介绍了关于Python去除字符串中空格的相关资料,需要的朋友可以参考下
    2022-12-12
  • 基于Python绘制三种不同的中国结

    基于Python绘制三种不同的中国结

    马上就要迎来新年了,就绘制了几个中国结,嘿嘿!本文为大家整理了三个绘制中国结的方法,文中的示例代码讲解详细,快跟随小编一起动手尝试一下吧
    2023-01-01
  • 基于Python实现一键找出磁盘里所有猫照

    基于Python实现一键找出磁盘里所有猫照

    最近在整理我磁盘上的照片,发现不少猫照,突然觉得若能把这些猫照都挑出来,观察它们的成长轨迹也是一件不错的事情。一张一张的找实在是太费劲了,能不能自动化地找出来呢?本文将详细为大家讲讲,需要的可以参考一下
    2022-05-05
  • python机器学习GCN图卷积神经网络原理解析

    python机器学习GCN图卷积神经网络原理解析

    这篇文章主要为大家介绍了GCN图卷积神经网络原理及代码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-05-05
  • 根据tensor的名字获取变量的值方式

    根据tensor的名字获取变量的值方式

    今天小编就为大家分享一篇根据tensor的名字获取变量的值方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • 一文详解如何打包python程序为可执行文件

    一文详解如何打包python程序为可执行文件

    这篇文章主要介绍了如何打包python程序为可执行文件的相关资料,PyInstaller是一个将Python程序打包为可执行文件的工具,以下是使用PyInstaller将Python程序打包为可执行文件的步骤,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-04-04
  • Python numpy多维数组实现原理详解

    Python numpy多维数组实现原理详解

    这篇文章主要介绍了python numpy多维数组实现原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03

最新评论