在timeit模块中有以下代码-什么是便捷功能?我用Google搜索它,但找不到一个好的答案:
ready
答案 0 :(得分:3)
它是一个存在的函数,因此您不必自己去实例化和跟踪对象。例如,在timeit
模块中,唯一可以真正实现所需功能的就是Timer
对象-但是作为程序员,您不想关心Timer的生命周期,或将其带入您的命名空间。因此,此timeit.timeit()
函数相对匿名地创建一个Timer
对象,并在其上调用timeit()
,而无需跟踪该Timer
对象。 它会按照您想要的去做,您不必担心细节-方便。
还有许多其他这样的函数,它们实质上是用于实例化类和运行方法的包装器-另一个示例是subprocess.run()
,它创建了一个Popen
对象,程序员再次没有这样做。不必跟踪。
答案 1 :(得分:0)
animal_list = ["Bear", "Snake", "Snail"]
class_list = ["Mammal", "Reptile", "Gastropod"]
# Scenario 1
for i in range(len(animal_list)):
animal = animal_list[i]
class_ = class_list[i]
print(f"A {animal} is a {class_}.")
# zip() - a convenience function - Scenario 2
for animal, class_ in zip(animal_list, class_list):
print(f"A {animal} is a {class_}.")
A Bear is a Mammal.
A Snake is a Reptile.
A Snail is a Gastropod.
方案1:不使用便捷功能
方案2:使用便利功能