相关疑难解决方法(0)

使用其名称(字符串)调用模块的函数

在Python程序中给定带有函数名称的字符串调用函数的最佳方法是什么.例如,假设我有一个模块foo,我有一个内容为的字符串"bar".什么是最好的打电话foo.bar()

我需要获取函数的返回值,这就是我不仅仅使用它的原因eval.我想通过使用eval定义一个返回该函数调用结果的临时函数来做到这一点,但我希望有更优雅的方法来做到这一点.

python object

1580
推荐指数
15
解决办法
63万
查看次数

有没有办法将函数存储在列表或字典中,以便在调用索引(或键)时触发存储的函数?

例如,我尝试了类似的东西mydict = {'funcList1': [foo(),bar(),goo()], 'funcList2': [foo(),goo(),bar()],但是没有用.

有这种功能的某种结构吗?

我意识到我可以用一堆def语句轻松地做到这一点:

def func1():
    foo()
    bar()
    goo()
Run Code Online (Sandbox Code Playgroud)

但是我需要的陈述数量变得非常笨拙且难以记住.将它们很好地包装在字典中会很好,我可以一次又一次地检查键.

python dictionary dispatch

48
推荐指数
1
解决办法
6万
查看次数

如何将可调用对象打印为字符串?

我想应该已经有这样的问题了,但是我还没有找到。这可能是因为我不知道我正在寻找的确切概念/单词,但这里是一个例子:

我有这个代码:

group_1 = ['Hello', 'world', '!']
group_2 = [1,23,4,2,5,2]
group_3 = ['A', 'K', 'L']

all_groups = [group_1, group_2, group_3]
for i in all_groups:
    print(i, ':', len(i))
Run Code Online (Sandbox Code Playgroud)

它给出了这个输出:

['Hello', 'world', '!'] : 3
[1, 23, 4, 2, 5, 2] : 6
['A', 'K', 'L'] : 3
Run Code Online (Sandbox Code Playgroud)

这是预期的输出:

'group_1' : 3
'group_2' : 6
'group_3' : 3
Run Code Online (Sandbox Code Playgroud)

group_1正如您所看到的,我正在尝试打印可调用对象、group_2和 的名称group_3。有什么建议么?

python

4
推荐指数
1
解决办法
487
查看次数

标签 统计

python ×3

dictionary ×1

dispatch ×1

object ×1