關於如何快一點提高Python功力

2021-08-25 08:25:41 字數 1125 閱讀 4373

關於如何快一點提高python功力

確實當你學了python的一段時間之後會有一陣不知道如何更快的提高自己的功力。其實python也是語言的一種,雖然語法很簡單,但是內涵真的很豐富,招式非常的多。修煉武功我個人覺得分幾個層次:

• 第一招是語法:算是基本功,熟悉一門語言,語法是最核心也是最基礎的,你必須要熟練掌握.好像你學英語,詞彙肯定是要有一定的量的.

• 第二招資料結構:然後你的**會越寫大,你肯定要考慮資料結構,比如你爬取乙個**,你有一堆資訊,你如何抽象出來設計最佳的資料模型,減少**的複雜度.

• 第三招演算法:接著你繼續寫發現效能上需要優化了。比如處理百萬級的資料,處理大量的檔案的時候,要降低複雜度,對程序,執行緒間的排程,優化執行緒池的排程。

• 第四招設計模式:再往上走就需要架構,設計模式,提高自己額軟體匠藝了,這時候你的**量數萬,幾十萬了你需要考慮用一些好的設計模式去封裝你的**,隔離子系統,然後提高**的健壯性和可擴充套件性。

1.刷題

也許很多同學會反感,刷題我又不是學生,刷什麼題啊,python有大量的精妙招式,你想靈活的運用必須大量做題,忽然覺得怎麼和高中學數學是乙個路數啊,確實這是快速提高你功力的捷徑(沒有之一)

下面推薦一下我刷過的**:

2)leetcode

大名鼎鼎的leetcode裡面有大量的500強的面試題和演算法題,要求也比較高,很多國內外的碼農在上面刷題。難度從easy到hard都有,而且覆蓋面極廣,需要你的綜合實力去答題。

最簡單的題比如字串的處理有的時候也要用到二分查詢,二叉樹,排序.我個人覺得看一些基礎的演算法書之後,刷題會好一點.有的時候考的不是程式設計,是你的智商。但是你可以看到別人的解決問題的思路,特別是一些常見的演算法題。

另外上面兩個**都是英文的,話又說回來想學程式設計,英語是必須的。最新的計算機技術最厲害的文件基本都是英文的.

刷題刷一段時間就可以,切莫貪心,因為有些很難的題目做不出來,會很鬱悶的,會有很強的挫敗感~~畢竟人外有人,天外有天,我們刷題的目的只是為了熟練一些招式.

 我現在習慣都上stackoverflow,stackoverflow所面向的問題更集中於程式設計開發方面.算是程式設計師中的知乎吧.而且裡面有國外很多大牛給你回答,而且回答的都是很有質量的,關鍵有的時候還會給你推薦一些好的書.讓你眼前一亮.(補充一下這個**也是全英文的).

簡單12招讓Hive執行快一點,再快一點

hive可以讓你在hadoop上使用sql,但是在分布系統上的sql的調優是不同的。這裡有12個技巧能夠幫助你。hive並不是乙個關係型資料庫,但它假裝是大部分情況中的乙個。它有 執行sql,並且支援jdbc和odbc。這個啟示有利及不利的訊息 hive不執行查詢資料庫方式。這是乙個很長的故事,但是...

如何讓mysql索引更快一點

在 innodb 中,從二級索引回到主鍵索引查詢資料,這個過程稱作回表過程,而且這個回表過程是可以被優化的,這個優化就是利用覆蓋索引。先說結論,如果乙個索引的字段包含了所有要查詢的字段,這個索引就稱作覆蓋索引,覆蓋索引可以減少回表過程,能有效提高查詢效率。前面我們有說過,在 innodb 中資料都是...

一套回顧模板,成長快一點,麻煩少一點

沒有目標的人生,不值得過。如何尋找目標,過上有意義的人生,請參考 讓你越來越值錢的秘密 目標清單 當我們有了 目標 並且把目標 拆解 之後,就會聚焦到 執行 層面,一步一步 逼近目標。在這個過程中,可能順利,也可能遇到各種麻煩,導致某一步 延期 或 無法完成 最終影響整個目標的實現。為此我們需要經常...