您好,登錄后才能下訂單哦!
Git是編程中的基本技能之一,互聯網公司幾乎都在使用Git進行協作編程,昨天還有位禪友在微信上專門告訴我說星期五面試的時候剛好被問到 Git,幸好在這幾天學了一下。Git并不難,但會Git至少可以說明一個人的學習能力或者說對技術的嗅覺能跟上主流,如果面試問你GitHub是什么都不知道,面試官就會對你打一個大的問號。
簡單點評這一道題。
在使用 for 循環迭代一個列表時,有時我們需要獲取列表中每個元素所在的下標位置是多少,例如 numbers = [10, 29, 30, 41],要求輸出 (0, 10),(1, 29),(2, 30),(3, 41)
這道題的實現方式主要有兩種方式,第一種方式是通過獲取列表長度來迭代列表下標
for i in range(len(numbers)): print('({0}, {1})'.format(i, numbers[i]))
第二種方法是直接使用enumerate函數:
numbers = [10, 29, 30, 41] for index, value in enumerate(numbers): print(index, value)
后者才是更地道的寫法,在Python之禪中有一條格言是:There should be on,and preferably only one,obvious way to do it. 就是說我們寫代碼的時候應該選擇一種而且最好是唯一一種顯而易見的方式來實現。
內置函數 enumerate 還可以接收一個默認參數 start ,用于指定 index 從哪個數開始,默認是0,不知道有多少禪友知道這個用法,如果你不知道,那么建議你遇到新知識就更加詳細地了解一下官方文檔,而不僅僅只是淺嘗輒止 ,學會查文檔也是一個很重要的學習方法。文檔
大家提交的代碼大部分都回答對了,但也有些問題代碼,比如命名很隨意:
numbers = [10, 29, 30, 41] for i, j in enumerate(numbers): print(i, j)
用 i 和 j 這種沒有任何意義的名字顯得很業余,有人說這只是練習,但如果練習都是這樣的態度,很難說工作時你能取一個合理的名字。
還有禪友用list工廠函數返回一個新的列表,這種寫法有點畫蛇添足,而且在迭代超大的列表時會占用更多的內存,因為你又創建了一個新的列表。
numbers = [10,29,30,41] for i in list(enumerate(numbers)): print(i,end=' ')
勝者屬于堅持到最后的人
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。