Python enumerate() 函數----同時得到值和索引

enumerate() 函數用於將一個可遍歷的數據對象(如列表、元組或字符串)組合爲一個索引序列,同時列出數據和數據下標,一般用在 for 循環當中。
以下是 enumerate() 方法的語法:
enumerate(sequence, [start=0])
參數
sequence – 一個序列、迭代器或其他支持迭代對象。
start – 下標起始位置。
返回值
返回 enumerate(枚舉) 對象。

使用舉例一:

seasons = ['Spring', 'Summer', 'Fall', 'Winter']
print(list(enumerate(seasons)))  
# 運行結果是: [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]

print(list(enumerate(seasons, start=1)))       # 下標從 1 開始     
# 運行結果是:[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

使用舉例二:
給定一個列表a=[3,4,5,6,6,5,4,3,2,1,7,8,8,3],請設計一個函數,實現傳入一個target=3,輸出3這個元素在列表a中的索引,輸出格式如下:[0,7,13]

a=[3,4,5,6,6,5,4,3,2,1,7,8,8,3]

# 第一種方法
def solution(target):
    indix_list = list()
    count = 0
    for i in a:
        if i == target:
            indix_list.append(count)
        count += 1
    print(indix_list)
    
if __name__ == '__main__':
    solution(target = 5)



# 第二種方法
def s(target):
    ll = list()
    for index,nums in enumerate(a):
        # print(index,nums)
        if nums == target:
            ll.append(index)
    print(ll)

if __name__ == '__main__':
    s(3)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章