Python培訓機構老師談談Python哪些事
來源:
奇酷教育 發(fā)表于:
今天奇酷Python培訓老師想要跟大家談談學Python哪些事、Python如何進階、如何準備Python面試等相關的內容,而且是資深的Python培訓機構
今天奇酷
Python培訓老師想要跟大家談談學Python哪些事、Python如何進階、如何準備Python面試等相關的內容,而且是資深的
Python培訓機構老師跟你聊,學Python不知道的看什么書、不知道去哪個網站、不知道關注哪個公眾號.......這里統(tǒng)統(tǒng)告訴你!
學生問:請老師先談談Python如何進階這個話題吧。
Python培訓老師:很多同學在線咨詢問這個話題,回答過一些問題,大家有空可以去翻翻或者在線咨詢。進階就是一點點的積累,首先不要不舍得花時間。你要舍得花時間。個人很推薦讀優(yōu)秀的開源項目源碼 以及自己「造輪子」這2種方法。這個過程中不斷的反思和積累各種經驗。
其次是看別人的博客,多看書。但是要掌握一些過濾不好信息的技巧。有些訂閱列表 我在專欄中也有寫。大家有空可以去看看。我還訂閱了python社區(qū)的一些郵件列表,說實話很煩。但是有時候你們看到一些社區(qū)開發(fā)者討論,甚至是激烈討論。我喜歡靜靜的看他們,學習他們對一些事情的看法,和思考的角度。
還有就是去看python標準庫的代碼。我還沒有看過Python的C的部分。剩下的就是有勇氣給開源社區(qū)提一些issue pr。
學生問:如果初級、中級、高級Python工程師分的話,你認為各自水平的工程師應該掌握哪些語言特性和用法?
Python培訓老師:根據我的理解,初級的基本就是夠工作,那買 python 的書看2,3本,(掌握)里面的50%,熟悉Python常用的模塊,就可以工作了。
中級,就是愿意花時間讓代碼寫的好一些,比如今天學習了元類,用上。明天覺得類裝飾器不錯,也用上,不考慮用的恰不恰當,基本Python用到的東西都「熟悉」。
高級就是明確的知道什么時候該用什么,什么場景該用什么,怎么用。恰到好處。
學生問:李老師,你好,在公司實際的項目開發(fā)中,有些新人是Python基礎功夫蠻好,各種 Python 試題都能回答的不錯,但是遇到實際項目開發(fā),只管當前跑通,但寫程序整體觀總是比較欠缺,功能耦合越多的時候,問題就會越積累越嚴重。搞的后來幾乎每個模塊都要重構過。這個你覺得是屬于能力問題?還是態(tài)度問題呢?
Python培訓老師答:我覺得這是一個工程師必進之路吧,前提是你知道它有問題,這很重要。有時候產品不是一個工程師能決定的,這個真靠個人節(jié)操了。知恥才能后勇。我以前也是,現在你讓我看 2 年前的代碼,我也不想承認那是我寫的。我希望 2 年后我看今天的代碼,也有這種感想。領導很重要,公司文化和團隊文化很重要。
學生問:總感覺寫代碼沒頭緒呢?
今天說幾點,第一是一定要按照 PEP8 來,團隊可以有妥協,大家同意即可。第二是盡量讓代碼寫的 Pythonic 。這個是一個很長期的過程。
接著你有興趣,你得各種方式影響別人,說服別人。這個是非技術能力了。注意表達的方式方法,比如不要指點,而是在咨詢。有時候氣氛不好了,發(fā)點搞笑圖片。自己的話,本地可以試試 pre-commit ??梢宰屇愕木庉嬈髦С执a自動執(zhí)行 flake8 。
學生問:前端開發(fā)和 web 開發(fā)一樣嗎?
Python培訓老師:在豆瓣不一樣,但是是重合的,比如我們組內的前端工作都是我們組的后端工程師消化。我們組的前端實力灰常強。
學生問:如果是學習 web 應該造什么是有幫助的呢?
學生問:很多人想了解下,Python web 開發(fā)方面,框架如何選擇?django or flask?如何學習框架?學完是不是就可以工作了?
Python培訓老師:我個人不喜歡django, 這句話,大家謹慎的看。這個和個人寫代碼,或者性格有關。我不喜歡耦合度太高,束縛太重的東西。
有人說 django 是企業(yè)級的,其實 pyramid 更合適。我們組現在有一些產品就是使用 pyramid 做的。我挺喜歡。但是不推薦,因為對新手不咋友好。
django 還是 flask, 我沒法建議。但是新人學習建議 flask,學的差不多了(如果工作中有用 django 更好,沒有的話自己學些),自己給自己個答案。但是離找工作還挺遠的。
框架只是一個工具而已。就算是 django, 吭哧吭哧一個月你也能學個差不多。關鍵還是使用 python 的熟悉程度,還有對 web 開發(fā)工作的經驗了。
學生問:老師,怎樣才能把代碼寫的 Pythonic 呢?
Python培訓老師: Pythonic 沒法幫你,靠你積累,看別人的實現你思考,自己不斷地對自己有要求,比如效率,比如代碼可讀性。