python中的静态方法如何调用_在python中调用静态方法
你需要做一些像:
class Person(object): #always inherit from object. It's just a good idea...
@staticmethod
def call_person():
print "hello person"
#Calling static methods works on classes as well as instances of that class
Person.call_person() #calling on class
p = Person()
p.call_person() #calling on instance of class
根据你想要做什么,类方法可能更合适:
class Person(object):
@classmethod
def call_person(cls):
print "hello person",cls
p = Person().call_person() #using classmethod on instance
Person.call_person() #using classmethod on class
这里的区别是,在第二个示例中,类本身作为方法的第一个参数传递(与实例是第一个参数的常规方法相反,或者不接收任何其他参数的静态方法)。
现在回答你的实际问题。我认为你没有找到你的方法,因为你把类Person放在一个模块Person.py中。
然后:
import Person #Person class is available as Person.Person
Person.Person.call_person() #this should work
Person.Person().call_person() #this should work as well
或者,您可能需要从模块Person中导入类Person:
from Person import Person
Person.call_person()
这一切对于什么是模块以及什么是类都有点混乱。通常,我尽量避免给类与他们所在的模块相同的名称。但是,由于标准库中的datetime模块包含一个datetime类,所以显然不会太低估。
最后,值得指出的是,你不需要一个类来实现这个简单的例子:
#Person.py
def call_person():
print "Hello person"
现在在另一个文件中,导入它:
import Person
Person.call_person() #'Hello person'
python中的静态方法如何调用_在python中调用静态方法相关推荐
- python中的静态方法如何调用_关于Python中如何使用静态、类、抽象方法的权威指南(译)...
对于Python中静态.类.抽象方法的使用,我是一直很迷糊的.最近看到一篇技术文章对这方面解释的很好,在此翻译一下,加深印象,也为有需要的同学提供一个方便. Python中方法是如何工作的: 方法即函 ...
- python形参中传入两个实参_认识Python函数的两个概念:形参与实参(16)
我们先用Python编写一个比较两个数字大小的函数pMax(). def pMax(a,b): '''比较两个数字的大小,并返回较大的数字''' if a < b: print("{0 ...
- python文件之间的相互调用_用Python创建功能模块——截取字符串模块
用Python创建模块 本篇文章小编给大家分享在Python如何创建属于自己的模块,实现更多的功能! 一.模块 模块是什么?简单来说,当程序的功能很多.代码量很大时,我们可以编写一个实现一定功能的py ...
- python一个函数调用另一个函数_在Python中将函数作为另一个函数的参数传入并调用的方法...
在Python中,函数本身也是对象,所以可以将函数作为参数传入另一函数并进行调用 在旧版本中,可以使用apply(function, *args, **kwargs)进行调用,但是在新版本中已经移除, ...
- c调用python代码找不到模块_构建 Python C 扩展模块
有好几种扩展 Python 的功能的方法.其中一种就是用 C 或 C++ 编写 Python 模块.通过这个过程可以提高性能,更好地访问 C 库函数和系统调用.在本教程中,我将带大家了解如何使用 Py ...
- python中none算变量吗_在python中对变量判断是否为None的三种方法总结
三种主要的写法有: 第一种:if X is None; 第二种:if not X: 当X为None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元组()这 ...
- python中的列表和元组_浅析Python中的列表和元组
区别列表是动态数组,它们可变且可以重设长度(改变其内部元素的个数). 元组是静态数组,它们不可变,且其内部数据一旦创建便无法改变. 元组缓存于Python运行时环境,这意味着我们每次使用元组时无须访问 ...
- python修改散点图中点的颜色_更改散点图中不同虚拟值的点的颜色 - python
在我的数据集中,我有一个Price列用于房价,还有5个虚拟列用于城市中的不同位置.我要做的是用不同的颜色在散点图上显示数据点. 例如,在一个包含所有房屋价格的散点图上,我想要: 当dummy1表示房屋 ...
- python怎么把变量付给数组_使用Python将数组的元素导出到变量中(unpacking)
解决的问题 需要将数组(list)或元组(tuple)中的元素导出到N个变量中. 解决的方案 任何序列都可以通过简单的变量赋值方式将其元素分配到对应的变量中,唯一的要求就是变量的数量和结构需要和序列中 ...
- python中mod是什么意思_【python中,mod_python到底做了些什么呢?】mod python 教程
python 编程小白 ,不会用doctest 请大神指教怎么用!! >>> >>> def is_between(v, lower, higher): ... ...
最新文章
- 如果你没用过maven的install,你应该了解一下!maven中的install功能及用法。
- Android:ViewPager为页卡内视图组件添加事件
- 有关RDS上只读实例延时分析-同适用于自建MySQL主从延时分析判断
- 如何在Linux系统上部署接口测试环境
- 模块讲解----time与date time(时间模块)
- QT学习:获取文件详细信息
- 《复杂》读书笔记(part6)--计算机中的自我复制
- [NOIP2018]铺设道路
- 线程池工作原理流程图 源码概览线程池工作原理流程图 源码概览
- 【万里征程——Windows App开发】如何使用粘贴板
- Windows环境下hadoop安装和配置详细步骤
- 普林斯顿微积分读本小记(未完待续)
- LabVIEW实现模糊PID控制
- android 实体 快捷键,as快捷键
- jquery php 分页插件,JQ分页插件
- 详解VMware Workstation 12 安装虚拟机
- 支付宝手机网站支付出现系统繁忙,请稍后再试
- 剑指offer | 面试题54:二叉搜索树的第k大节点
- 上网的时候总是掉线?该如何处理
- 戴尔高密度服务器性能指标,PowerEdge R630:1U机身下的2U性能