Python習題集(七)


每天一習題,提升Python不是問題!!有更簡潔的寫法請評論告知我!

https://www.cnblogs.com/poloyy/category/1676599.html

 

題目

如果有一個列表a=[1,3,5,7,11]
問題:1如何讓它反轉成[11,7,5,3,1]
2.取到奇數位值的數字,如[1,5,11]

 

解題思路

問題一:非算法方案

直接調用內置函數或切片

 

問題一:算法方案

  1. for循環,循環次數取列表長度的一半
  2. 頭尾對稱位置的值互換

 

問題二

切片,設置步長

 

答案

"""
如果有一個列表a=[1,3,5,7,11]
問題:1如何讓它反轉成[11,7,5,3,1]
"""
# 非算法方案一
a = [1, 3, 5, 7, 11]
a = a[::-1]
print(a)

# 非算法方案二
a = [1, 3, 5, 7, 11]
a.reverse()
print(a)

# 算法
a = [1, 3, 5, 7, 11]
lens = len(a)
for i in range(0, int(lens / 2)):
    a[i], a[lens - i - 1] = a[lens - i - 1], a[i]
print(a)


"""
如果有一個列表a=[1,3,5,7,11]
問題:2.取到奇數位值的數字,如[1,5,11]
"""
a = [1, 3, 5, 7, 11]
a = a[::2]
print(a)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM