作為一個開發者,除了Github,你最應該上的網站就是StackOverflow(以下簡稱SO)- 編程領域的問答網站,在SO上可以找到最正確和最容易理解的答案。如果你是一個有經驗的並且願意分享的人,還可以通過回答問題或者其他用戶的贊同而獲得'聲望值',現在基本互聯網公司招聘時如果你的SO賬號的聲望值比較高是一個很正面的加分項。
新年伊始,我們來盤點下2018年StackOverflow上最受關注的10個Python問題,看看一年之後,Python開發者的關注點有沒有改變:
What does the “yield” keyword do?
排名第一的還是它,關鍵詞yield是用來做什麼的?也是我早期學習Python時的不能理解的其中一點,該問題下的排名第一的回答非常有啟發性
What are metaclasses in Python?
排名第二也沒有變,元類是Python語言高級特性之一,是你學習Python繞不過去的學習點
Does Python have a ternary conditional operator?
現在看起來這個問題有點奇怪,因為它提出的太早了。在Python 2.5的時候就加了三元條件運算符: a if condition else b 。但是這個問題的關注很高,今年已經升到了第三位。
Does Python have a string ‘contains’ substring method?
新上榜的問題,其實就是用in
What does if __name__ == “__main__”: do?
這個問題關注度降了一些,這也是我早期很困惑的問題之一,直到在SO找個了答案。
Accessing the index in ‘for’ loops?
新上榜的問題,使用enumerate函數
Difference between append vs. extend list methods in Python
新上榜的問題,和上面的問題一樣相對基礎
How do I check whether a file exists without exceptions?
新上榜的問題,再延伸一點,可以引出EAFP(Easier to Ask Forgiveness than Permission,即不檢查,出了問題由異常處理來處理) or LBYL(Look Before You Leap,即事先檢查)這個問題
Iterating over dictionaries using 'for' loops
新上榜的問題,基礎知識啦
How do I check if a list is empty?
還是原來的第10位,很初級的問題,答案是 `if not a`
總結
通過2017和2018年的So上最受關注的10個Python問題的變化,可以感受到
1. Python受關注程序越來越高
2. Pythoneer新人更多,更關注一些基礎知識
閱讀更多 Excel技巧君 的文章