这个想法是,当写一个新函数时,它的变量名会自动附加到列表中。有没有办法将函数的名字自动添加到列表中?
只是要注意,我知道我可以使用mylist.append(无论),但我特别寻找一种方法来自动追加,而不是手动。
因此,如果我们开始与...
def function1(*args):
print "string"
def function2(*args):
print "string 2"
mylist = []
...是有办法追加“功能1”和“函数2”自动MYLIST这样它最终会这样的..
mylist = [function1, function2]
具体来说,我想列出变量名称,而不是字符串(例如“function1”)。
我在学习Python,只是在试验,所以这个目前没有任何特定的用途,我只是想知道它是否可能。
如果我不清楚,请提前感谢您的任何建议和快乐的回答。
**
嗨马丁,谢谢你的回应。我知道可以做到这一点,但我特别想知道是否可以自动做到这一点。我的想法是,如果我要编写许多函数,那么我就不必费心将每个函数添加到列表中。 – user2061277 2013-05-11 17:30:01
@ user2061277显式优于隐式。它甚至会如何决定将什么放入这个列表,哪些不是? – delnan 2013-05-11 17:32:23
@ user2061277:从您的问题中不清楚。有很多选择;使用装饰器('标记'你想添加到列表中的所有函数,只需要一些额外的语法),列出'globals()'命名空间中的所有对象,然后过滤函数等。 – 2013-05-11 17:32:45