gpt4 book ai didi

python - 如何动态定义函数?

转载 作者:太空狗 更新时间:2023-10-29 17:11:29 26 4
gpt4 key购买 nike

我有这样的功能:

def activate_field_1():
print 1

def activate_field_2():
print 2

def activate_field_3():
print 3

如何为 x=1:10 定义 activate_field_[x],而无需逐一输入?当然,我更愿意传递一个参数,但就我的目的而言,这是不可能的。

最佳答案

您想在源文件中静态地单独定义它们吗?那么您最好的选择是编写一个脚本来生成它们。

另一方面,如果您希望在运行时使用这些函数,则可以使用高阶函数。例如

>>> def make_func(value_to_print):
... def _function():
... print value_to_print
... return _function
...
>>> f1 = make_func(1)
>>> f1()
1
>>> f2 = make_func(2)
>>> f2()
2

您可以生成这些列表并在运行时再次存储。

>>> my_functions = [make_func(i) for i in range(1, 11)]
>>> for each in my_functions:
... each()
...
1
2
3
...

关于python - 如何动态定义函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3687682/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com