在Python中只分配多个函数输出之一的最快方法

时间:2018-05-10 00:50:37

标签: python performance variable-assignment

假设我有一个返回两个值的函数。我只对将其中一个分配给变量感兴趣。哪个最快,更Pythonic(或者有更好的方式)?

def fn():
    a = 1
    b = 1
    return a,b

#1
a = fn()[0]

#2
a,_ = fn()

#3
a,b = fn() #and simply ignoring b

#4
x = fn(); a=x[0] #probably not this one but including for completeness

我尝试了timeit,但它给了我不一致的结果,不同的变化更快或更慢,具体取决于我在a内分配给bfn()的内容。是否有第一原则的方法来决定,或更好的时间测试?

0 个答案:

没有答案