資源 | 忘了Python關鍵語句?這份備忘錄拯救你的記憶

尋夢新聞LINE@每日推播熱門推薦文章,趣聞不漏接❤️

加入LINE好友

機器之心整理

作者Laurent Pointal

參與:思源、劉曉坤

今天要介紹的 Python 3 Cheat Sheet 由法國國家科學研究中心(CNRS)的法國機械工程與信息技術實驗室(LIMSI)的工程師 Laurent Pointal 總結。這個簡單的 Cheat Sheet 專注於從算法/編程開始所必需的語言部分,提供了學生入門所需的一般信息。注意:它不涉及面向對象的編程。

Python 3 Cheat Sheet 一共包含兩頁,分成了多個框圖,涉及基本的 Python 數據結構、數學運算、條件和循環語句、文件讀寫,以及異常值處理等。在每個框圖中,右上角是類型名稱,藍色和紅色字體是該類型包含的關鍵字,綠色字體是示例,黑色斜體字提供更詳細的信息。

  • pdf 地址:https://perso.limsi.fr/pointal/_media/python:cours:mementopython3-english.pdf

  • 項目地址:https://perso.limsi.fr/pointal/python:memento

資源 | 忘了Python關鍵語句?這份備忘錄拯救你的記憶 科技 第1張

Python3 的基本數據類型和數據結構類型:

數據類型:整型(int)、浮點型(float)、布爾型(bool)、字符串(str)、二進制字節序列數(含二進制數、八進制數、十六進制數,bytes)等。

數據結構類型包含有序序列和鍵值容器。有序序列包含列表、元組和字符串等,其中列表和元組的重要區別是前者可變,後者不可變,列表主要用於存儲同構數據,元組主要用於存儲異構數據;鍵值容器沒有預先設置順序,可以通過訪問鍵快速查找值,包含字典、集合等。

資源 | 忘了Python關鍵語句?這份備忘錄拯救你的記憶 科技 第2張

標識符:用於代表變量、函數、模塊、類等的名稱。注意盡量避免使用讀音符號,不要使用 Python3 中的關鍵字,Python3 的標識符是區分大小寫的,框圖中分別列出了允許和不允許的標識符示例。

變量賦值:賦值也就是為變量賦予具體的值,等號左側是變量名,右側是值。如果右側存在變量,可以看成是函數;可以將同一個值賦予多個變量;可以將多個值分別賦予多個變量;可以交換兩個變量的值;可以用於表示循環語句,等。

資源 | 忘了Python關鍵語句?這份備忘錄拯救你的記憶 科技 第3張

類型轉換:將數據從某一個數據類型轉換為另一個數據類型,可能將某一個數據結構轉換為另一個數據結構。可以將表達式總結為 type(expression),其中 type 是目標轉換類型,expression 是要轉換的數據或數據結構。此外,也可以用更具體的句式轉換列表的格式,或者對列表中的每個數據同時轉換數據類型。

資源 | 忘了Python關鍵語句?這份備忘錄拯救你的記憶 科技 第4張

序列容器索引:用於列表、元組、字符串、bytes 的數據排序。可以使用正索引,也可以使用負索引。定義了索引之後,可以方便地對容器的數據進行訪問、賦值(可變量)等操作,數據訪問/賦值可以用於單個數據,也可以用於多個數據,並能指定間隔、順序/倒序等。

第一頁剩餘部分還包括:布爾邏輯、聲明的模塊結構、模塊導入操作、數學運算、條件聲明語句結構以及異常案例處理語句。

資源 | 忘了Python關鍵語句?這份備忘錄拯救你的記憶 科技 第5張

循環語句是編程語言中最核心的語句之一,如下在第二頁所示在 Python 中主要有 while 循環與 for 循環。其中 While 循環需要一個「循環條件」,如果它為真,則繼續迭代。而對於 For 循,我們可以把變量「var」應用需要循環的代碼塊中,「for」語句會迭代地從 seqence 中抽取它。注意這兩個循環還會有控制語句,即立即從循環體跳出的 break 命令和跳過當前循環剩餘語句並進入下一個循環的 continue 語句。

資源 | 忘了Python關鍵語句?這份備忘錄拯救你的記憶 科技 第6張

注意 for 循環需要可迭代目標,即列表、元組和字符串等,只有這樣才能從它們中抽取元素。此外,for … in range() 語句可以通過數值進行迭代,例如從 0 增加到 9 等。在上圖還展示了 print() 函數和 input() 函數,其中 print() 函數可以列印字符串、變量和表達式。

Python 提供了非常多的內嵌運算函數,包括對數值變量的運算和各種數據結構的操作。如下展示了對列表、字典、集合和一般數據結構的操作方法,後面還繼續展示了字符串或元組的操作。例如在一般數據結構的操作中,len() 函數可能是最常見的方法,它可以用來統計不同數據結構中元素的數量。例如如果一個列表中儲存了所有神經元的輸出值,那麼我們可以使用 len() 統計神經元的數量,並用 for 循環依次訪問不同的神經元。

資源 | 忘了Python關鍵語句?這份備忘錄拯救你的記憶 科技 第7張

後面的列表、字典和集合操作都非常重要,它們在機器學習及一般編程中都十分常見。例如在列表運算中,append() 方法會在列表的尾部添加新的元素,extend() 方法會將另外一個序列添加到列表的末尾,而 pop() 方法會移除列表中的一個元素(默認最後一個元素),並且返回該元素的值。列表數據結構還有其它很多方法,包括移除 remove()、排序 sort() 和統計 count() 等。

除了列表外,字典是另外一種很重要的數據結構,如果我們需要迭代地給神經網路不同層級的參數命名,那麼很可能就需要借助字典數據結構。通過字典,我們可以使用數值型、字符型或其它類型的索引。字典的每個鍵值 (key=>value) 對用冒號 (:) 分割,每個對之間用逗號 (,) 分割,整個字典包括在花括號 ({}) 中。

字典同樣也有非常多的方法,如上所示刪除字典內所有元素的 clear() 方法、以列表返回可遍歷的(鍵,值)元組的 items() 方法,以及把字典 d2 的鍵/值對更新到 d 里面的 update(d2) 方法。

下面備忘錄中最重要的就是函數的定義和調用了,這在大多數編程語言中都是很核心的模塊。函數的定義與調用都非常簡單,這張表也只是展示了基本概念。此外,在這一張備忘錄中,它並沒有介紹類與實例等面向對象的編程方法。

資源 | 忘了Python關鍵語句?這份備忘錄拯救你的記憶 科技 第8張

最後是文件讀寫、字符串操作與字符串的格式化操作。其中文件讀寫在讀寫數據中是很常用的,當然我們也可以用 Pandas 等庫做到更高效的讀寫方法。在對文件進行處理過程中,open() 方法用於打開一個文件,並返回文件對象,如果該文件無法被打開,會拋出 OSError。打開文件並執行某些操作後,一般我們都需要使用 write() 方法將字符串寫入文件。每次打開一個文件,並完成讀寫後,我們必須使用 close() 關閉文件。

資源 | 忘了Python關鍵語句?這份備忘錄拯救你的記憶 科技 第9張

最後,兩頁完整的 Pyhon 3 備忘錄展示如下,如果需要更清晰的 PDF 版,讀者可點擊「閱讀原文」查閱。

資源 | 忘了Python關鍵語句?這份備忘錄拯救你的記憶 科技 第10張

資源 | 忘了Python關鍵語句?這份備忘錄拯救你的記憶 科技 第11張

本文為機器之心整理,轉載請聯繫本公眾號獲得授權

✄————————————————

加入機器之心(全職記者 / 實習生):[email protected]

投稿或尋求報導:content@jiqizhixin.com

廣告 & 商務合作:[email protected]

About 尋夢園
尋夢園是台灣最大的聊天室及交友社群網站。 致力於發展能夠讓會員們彼此互動、盡情分享自我的平台。 擁有數百間不同的聊天室 ,讓您隨時隨地都能找到志同道合的好友!