Я знаю, что нет ничего плохого в написании с надлежащей структурой функций, но я хотел бы знать, как я могу найти n-е число фибоначчи с большинством Pythonic-способов с помощью одной строки.
Я написал этот код, но мне это не показалось наилучшим образом:
>>> fib=lambda n:reduce(lambda x,y:(x[0]+x[1],x[0]),[(1,1)]*(n-2))[0]
>>> fib(8)
13
Как это может быть лучше и проще?