相关疑难解决方法(0)

函数内部的Python等价的静态变量是什么?

什么是这个C/C++代码的惯用Python等价物?

void foo()
{
    static int counter = 0;
    counter++;
    printf("counter is %d\n", counter);
}
Run Code Online (Sandbox Code Playgroud)

具体来说,如何在功能级别实现静态成员,而不是类级别?将函数放入类中会改变什么吗?

python

570
推荐指数
18
解决办法
31万
查看次数

在另一个方法中计算python方法调用

我实际上是在尝试用Java做这个,但我正在自学python的过程中,这让我想知道是否有一个简单/聪明的方法用包装器或其他东西来做这件事.

我想知道在另一个方法中调用特定方法的次数.例如:

def foo(z):
    #do something
    return result

def bar(x,y):
    #complicated algorithm/logic involving foo
    return foobar
Run Code Online (Sandbox Code Playgroud)

所以对于每次使用各种参数调用bar,我想知道foo被调用了多少次,也许是这样的输出:

>>> print bar('xyz',3)
foo was called 15 times
[results here]
>>> print bar('stuv',6)
foo was called 23 times
[other results here]
Run Code Online (Sandbox Code Playgroud)

编辑:我意识到我可以在栏内打一个计数器并在我返回时将其转储,但如果有一些魔法可以用包装来完成同样的事情,那将会很酷.这也意味着我可以在其他地方重用相同的包装器,而无需修改方法中的任何代码.

python profiling

12
推荐指数
2
解决办法
9672
查看次数

标签 统计

python ×2

profiling ×1