python类动态函数名 python 动态函数

python中函数名的命名规则

Python 命名一般来说有一下不成文的规则 :

新绛网站建设公司成都创新互联公司,新绛网站设计制作,有大型网站制作公司丰富经验。已为新绛上千提供企业网站建设服务。企业网站搭建\成都外贸网站建设公司要多少钱,请找那个售后服务好的新绛做网站的公司定做!

模块名一般使用全部小写 如 myphone

类名第一个字母大写,如果有多个单词,每一个单词的第一个字母大写如 : MyPhone

函数名 : 小写, 如果有多个单词用下划线隔开 如 my_phone

常量名字一般全大写 : MYPHONE

python的类中怎么实现动态化函数?

给你这样一个例子吧,这个例子里面有动态增加类的函数。

声明一个类,类初始化的时候读取配置文件,根据配置列表加载特定目录下的模块下的函数,函数和模块同名,将此函数动态加载为类的成员函数。

代码如下所示:

class WinBAS(Bas):

def __init__(self):

self.__baslist = {}

self.__Init_Modules()

pass

def __Init_Modules(self):

import modplugs

for m in modplugs.__moduleset__:

mh = __import__('modules.' + m)# + '.' + m)

ma = getattr(mh, m)# + '.' + m)

ma = getattr(ma, m)

setattr(self.__class__, m, ma)

modplugs.py是模块配置文件如下:

__moduleset__ = [

'BAS_GetUserList',

]

然后建立目录modules下面建立一个空的__init__.py文件,把目录变为一个包,在modules目录下建立真正的BAS_GetUserList实现:BAS_GetUserList文件中有个BAS_GetUserList函数如下:

def BAS_GetUserList(self, strs):

return [0, strs]

这样WinBAS类就可以动态加入了BAS_GetUserList函数。

python 怎么生成可变函数名

定义一个A类,然后实例化一个A对象,通过setattr函数来给当前类添加一个变量,值是test函数。调用haha函数,就相当于调用了test函数。 例2,定义一个模块,通过另一个模块函数调用函数来增加变量,值是test2函数。调用haha函数,就相当于调用了test2函数。

原理

python系统会维护一个变量的字典,可以通过locals()或者globals()获取到该字典。由于字典是可变对象,那么,就可以动态的增加变量。由于函数也是一个对象,那么就可以将变量指向函数。这样就可以达到动态修改函数名的目的了。


分享题目:python类动态函数名 python 动态函数
标题来源:http://myzitong.com/article/hgeegd.html