如何提高这个列表理解,需要返回第N个偶数,我需要偶数的列表或字典吗?
返回第 N 个偶数(想象一个偶数列表,返回输入数字在人眼位置的数字)
示例(输入 --> 输出)
1 --> 0 (the first even number is 0)
3 --> 4 (the 3rd even number is 4 (0, 2, 4))
测试:
(nth_even(3), --> 4)
(nth_even(1), --> 0)
(nth_even(2), --> 2)
(nth_even(100), --> 198)
(nth_even(1298734), --> 2597466)
我的代码:
我的代码在处理更大的数字时超时,所以我需要一个更快的方法。
def nth_even(n):
data = [num for num in range(0, n*2) if num % 2 == 0]
return data[n-1]
回答
def nth_even(n):
return (n - 1) * 2