Python初學筆記(1)——基於《Dive Into Python》5.4b版本pdf

來源:互聯網
上載者:User
  • Python 扮演著兩種角色。首先它是一個指令碼解譯器,可以從命令列運行Python指令碼程式;它還是一個互動 shell,可以執行任意的Python語句和運算式。這一點對調試、快速組建和測試相當有用

  • Python 不需要指定函數傳回值的資料類型;甚至不需要指定函數是否有傳回值。實際上,每個 Python 函數都返回一個值;如果函數執行過 return 語句,它將返回指定的值,否則將返回 None
  • 不光是Python函數,在 Python 中,永遠也不需要明確指定任何東西的資料類型,Python 會根據賦給它的值在內部將其資料類型記錄下來

  • 根據對資料類型的處理機制,程式設計語言有以下幾種分類:
    • 靜態類型語言——在編譯期間就確定資料類型的語言。大多數靜態類型語言是通過要求在使用任一變數之前聲明其資料類型來保證這一點的,例如Java,C系列
    • 動態類型語言——在運行期間才去確定資料類型的語言,例如VBScript 和 Python,因為它們確定一個變數的類型是在您第一次給它賦值的時候
    • 強型別語言——總是強制類型定義的語言,例如您有一個整數,如果不明確地進行轉換,不能將把它當成一個字串。Java,C,Python都是強型別語言
    • 弱類型語言——類型可以被忽略的語言,例如VBScript
  • 因此Python既是動態類型語言 又是強型別語言

  • Python 中 import moduleName
    語句將會引入一個Python模組,其中模組名參數指定的.py檔案的搜尋路徑為 sys.path 變數中指定的所有目錄,因此當需要添加一個新的模組/庫搜尋路徑是,需要在import之前首先調用sys.path.append('/my/new/path') 來進行路徑擴充

  • 在 Python 中萬物皆對象:字串是對象,列表是對象,函數是對象,甚至模組也是對象……
  • 在 Python 中,對象的定義是鬆散的,某些對象既沒有屬性也沒有方法,而且不是所有的對象都可以子類化。但是萬物皆對象從感性上可以解釋為:一切都可以賦值給變數或作為參數傳遞給函數
  • 每一個Python函數作為對象,都包含了一個 doc string 屬性,用於描述該函數的功能特性,當在函數定義中使用三重引號"""Function description string""" 作為該函數要定義的第一個內容 (這是必須的要求,即在冒號後面的第一個內容) 時,該函數對象的 doc string 屬性的值就是該字串,通過調用print
    module.func.__doc__
    語句,即可列印出該函數的說明字串

  • Python 函數沒有類似於C和Java那樣標明函數的開始和結束的花括弧,唯一的分隔字元是一個冒號 (:),表明緊接著的就是函數體代碼。同樣的,對於if,for,while這樣的代碼塊也沒有表明開始和結束的花括弧,代碼塊都是通過它們的縮排來定義的,開始縮排表示塊的開始,取消縮排表示塊的結束

  • Python模組是對象,並且所有的模組都有一個內建屬性 __name__。一個模組的__name__ 的值取決於您如何應用該模組。
  • 如果 import 模組,那麼 __name__ 的值通常為模組的檔案名稱,不帶路徑或者副檔名。
  • 但是您也可以像一個標準的程式一樣直接運行模組,在這種情況下 __name__ 的值將是一個特別的預設值,__main__,即此時 __name__ == __main__ 成立
  • 因此一個模組的module.py檔案中常有形如
    if __name__ == "__main__":    
        ……
    這樣的代碼塊,當直接使用 python module.py 執行該模組時,本代碼塊就將被調用,而如果使用 importmodule.py 引入該模組,則改代碼塊不會被執行,所以該代碼塊常用於進行模組的測試工作。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.