當前位置:
首頁 > 最新 > 學習python你需要熟知的基礎知識

學習python你需要熟知的基礎知識

版權聲明

本文首發於微信公眾號

沁機邁可思(zw_life-long_doing)

無需授權即可轉載

轉載時請註明出處

前些日子,一個朋友告訴我說:「作為一個文科生,學一門計算機語言真的好睏難呀,尤其是自學。」

誠然,對於一個沒有接觸過編程的人來說,學習一門計算機語言算是比較枯燥和辛苦的。

但是學習計算機語言,在過程上和學習任何非母語語言的過程其實是差不多的。

就拿學習英語來說,最基本的字母、音標、語法等基礎知識在我們初中的時候,就已經學的七七八八了。再加上對語法書、詞典等工具書和Google搜索引擎的使用,其實我們對「英語」這門技能就已經算作是入門了。那入門之後,我們怎麼達到精通呢?

因此,本文重點梳理了,python語言的一些基礎知識,希望可以給正在學習它或準備學習它的夥伴,提供一個參考。當然,老鳥們也不要忘了過來這邊挑刺兒糾錯喲。

基本數據類型

在Python中,它的基本數據類型主要分為3大類:

除了上面幾個鏈接里的基礎知識之外,這裡在拓展一下:容器類型,除不可變數據類型只能進行查詢操作外,其他均可進行「增加、刪除、修改、查詢」這四個操作

這裡以字典為例進行簡單操作。

數據結構

我們知道,在現實生活中,我們處理一件事情的時候,往往不只是處理一個數據,通常都是一個數據的集合體,即儲存大量數據的容器。而這個容器,則被統一稱為數據結構。python里除了4種基本的數據結構外(列表、元組、集合、字典),還有3類數據結構在數據分析中會相對比較常用,分別是:雙向鏈表(隊列/棧)、排序字典、計數器。

隊列和棧的運行原理差不多,均可對數據集的兩端進行操作,這裡以一個隊列為例:假設我們去吃午飯,需要依次排隊就餐,在隊列里應該怎麼表示呢?

然後說說排序字典。前面我們知道,字典有一個特點是「無序」的。但有時候我們在做數據分析的時候,需要對一個字典的數據進行迭代,並按照插入的順序進行訪問,這格式化排序字典就會大大提高我們的效率。

接下來就是計數器,它反饋的是一個字典對象。key是單詞,value對應該單詞出現的次數。下圖的事例中,我用《肖申克救贖》里的一句經典台詞來演示一遍。但是這裡為了演示,我把最後幾個詞語重複了一遍。

條件判斷

循環

在python里,while循環沒有for循環使用的那麼頻繁,它僅僅是在遇見遞歸場景的時候,比較常用。因此,這裡主要講的是for循環。

for循環有個特點:遍歷,即把對象中的各個數據逐一且不重複的都列印一遍。也正是因為這個特性,說它是數據分析中最常用的語句也是不為過。因為我們可以用它來批量處理數據。比如說,將GAFATA中的股票代碼批量換成大寫。

但要注意的是,對應字典的循環,有一定的不同。

有的時候,我們不一定要遍歷對象數據中的所有元素,則可以通過「continue」和「break」跳出循環。但不同的是,「continue」主要用於跳出當前循環;而「break」則是跳出整個循環

發現了嗎?在使用「continue」語句的時候,當python遍歷到「Alibaba」這個元素的時候,自動跳過了它,然後繼續執行後面的循環;但是使用「break」語句的時候,整個循環在遍歷到「Alibaba」關鍵字的時候,就自動停止了循環,不會繼續執行下去。

模塊與包

說起模塊,可以理解為一個個不同類別的文件。而包,則是將一個個模塊組織起來的文件夾。

在python中,有三種方式來導入模塊。

import + 包/模塊名

import + 包/模塊名 as + 別名

from + 包/模塊名 import 函數名(僅僅使用這個包或模塊中的某個具體函數)

但是,我們在調用模塊的時候,除了使用到一些python內置的模塊外,還會使用到第三方的包。至於如何安裝第三方的包,Google上的教程有很多,這裡因為篇幅受限就不再贅述了。下面簡單的將調用模塊的兩種情況進行一個簡單的舉例應用,見下圖。

函數

在程序設計中,函數指的是用於進行某種計算的一系列語句的有名稱的組合。通俗的講,函數就是套路。即,只要你輸入了滿足函數條件的任何數據,就給你輸出想要的結果。

同樣的,在實際運用函數的過程中,內置的函數不一定能滿足我們的業務需求。因此,我們需要自定義函數。在python中通常用「def」關鍵字來定義函數。

但同樣,函數名和變數的名稱一樣:字母、數字和下劃線是合法的,但第一個字元同樣不能是數字。下圖用一個實例來自定義一個函數並使用,注意一下「return」與「print」的不同結果喲。

這裡要注意的是,如果當函數的參數是不可變數據類型的時候,它的值是不可更改的;但如果參數是可變數據類型,結果就不同了。

函數的使用,在python中是相對比較基礎的,因為它可以幫助我提高運行的效率,因此了解最基本的自定義函數,是有必要的。但是對於其他的內置函數,不一定要死記硬背,實踐是最好的記憶。若你告訴我說不知道某個代碼是否可以使用函數,那麼你就要使用幫助函數help()進行查詢了。

寫在最後

學習一名新的語言,尤其是一門計算機語言,親自上手敲擊代碼是必不可少的。在這裡面,你會遇見很多在課程里遇不到的問題。比如說在數據結構中,我在初次運行代碼的時候,就遇見了「deque」不存在的錯誤。經過多方搜索,原來是因為沒有調用它,導致了報錯。

同時,在學習的時候,如果任務完成時間充裕,一定要避免養成「伸手黨」的劣習。為什麼這麼說呢?因為只有辛苦得來的果實,才不會被輕易忘記,才有可能內化成自己的東西,別人的始終是別人的嘛。

我叫鍾小韋,愛折騰的數據分析師,期待與你一起成長、進步。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 沁機邁可思 的精彩文章:

幣圈造富神話比比皆是,你是深信不疑,還是批判選擇?

TAG:沁機邁可思 |