繁体   English   中英

有关模块功能和类的基本问题

[英]Basic question about modules functions and classes

以下两个代码示例执行相同的操作。 我在解释它们如何正常工作吗?

如何使用python直接检查我的解释是否正确?

在代码示例A中,导入了timeit模块,然后从timeit模块使用timeit函数( timeit.timeit )-这正确吗?

在代码样本B中, ttimer类的实例,并且timer类在tiemit模块中。 在代码示例B中, t.timeit()使用的是timeit()方法,该方法是计时器类的一部分。 t.timeit()使用的timeit()方法不是代码示例A( timeit.timeit )中的timeit函数,因为代码示例B中的timeit方法在timer类中,而在代码示例A中, timeit方法是timeit模块中的一个函数,不是类的一部分。 这个对吗?

代码示例A:

import timeit
timeit.timeit('char in text', setup='text = "sample string"; char = "g"')

代码示例B:

import timeit
t = timeit.Timer('char in text', setup='text = "sample string"; char = "g"')
t.timeit()

您可以查看源代码: https : //github.com/python/cpython/blob/e42b705188271da108de42b55d9344642170aa2b/Lib/timeit.py#L229

模块级timeit只是一个便利包装。

这两个代码将具有相同的效果,您可以通过运行它们来看到此效果,但是您选择执行的代码将取决于您的意图。

您可以在此处了解更多信息: https : //www.geeksforgeeks.org/difference-method-function-python/

对于自学编程和初学者来说,这也是一个很好的网站。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM