簡體   English   中英

在python 3中反轉列表的問題

[英]Issue reversing a list in python 3

def fib2(n): #return Fibonacci series up to n
     """Return a list containing the Fibonacci series up to n."""
     result = []
     a, b = 0, 1
     while b < n:
          result.append(b) #see below
          a, b = b, a+b
     return result

#===========================================
f35 = fib2(35)     #call it
print (f35)        #write the result

好的,這就是我到目前為止所擁有的。 給出輸出[1、2、3、5、8、13、21、34]。 很好,但是我需要將其反轉。 顯示[34,21,13,8,8,5,3,2,1,1]。 我只是不知道如何應用反向命令或使用[::-1]方法。

如果嘗試應用上述任何一種方法,我都會收到很多錯誤。 我對此很陌生。 感謝您的時間。

嘗試這個

print (f35[::-1]) // Reversed list will be printed  

還有其他一些方法可以反轉列表。 他們都將工作。

您還可以使用列表對象的reverse方法

f35.reverse()
print(f35)

您可以使用任何一個

return result[::-1] # or list(reversed(result))

要么

f35 = fib2(35)
f35.reverse()
print(f35)

作為替代方案,您可以使用insert而不是append來僅按正確的順序構建列表?

所以代替:

result.append(b)

做:

result.insert(0, b)

這會將b放在列表中的索引0處,並將所有其他元素推上一個。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM