Python學習手冊 第一部分使用入門

2021-09-11 01:38:34 字數 1314 閱讀 1436

python學習手冊的特點是內容全面,敘述詳盡,作為瀏覽python全貌的讀物來講比較合適。本人看的是中文第四版,看外文程式設計書籍的中譯本的乙個最大的問題就是翻譯的文字總是比較生硬,甚至不好理解。無奈自己英文並不好,看英文版花的時間會多一些。

1.python**執行過程

python將每一條語句載入,翻譯為位元組碼,然後**到python虛擬機器(pvm)中執行。

一條一條語句逐一執行,所以他是乙個動態語言。位元組碼是介於自然語言和機器碼之間的編碼,他的執行效率低於二進位制的機器碼(cpu指令集),但是與平台無關,這就是python跨平台的原因之一。另乙個原因就是python的實現大部分是cpython實現底層語言是ansi c。資料夾中的.pyc檔案就是位元組碼檔案,如果程式不修改再次執行,他會直接載入pyc檔案執行而不是原始檔,這樣提高載入效率。

python語言本身並不包括他的執行,所以上述執行機制是目前比較主流的方式,隨著技術的進步,也會在更新。

2.凍結二進位制檔案

python檔案開發結束後,也可以使用凍結二進位制工具,將位元組碼,pvm和其他支援檔案打包,生成乙個可執行檔案。由於包含pvm,這個檔案可能比較大,但是目標機器不安裝python環境就可以執行。常用的工具是py2exe和pyinstaller。

3.模組簡介

呼叫模組的檔案被稱為頂層檔案,他的命名應該為指令碼(script)。被呼叫的檔案被稱為模組,必須以py為字尾。在unix系統中,指令碼的第一行有#!/usr/local/bin/python 這裡雖然是注釋但是也是有用的,告訴系統,直譯器在**。

import模組時,模組被執行,但是只執行這一次,後面即使修改了原始檔也不會再執行,因為匯入是很耗時的工作。比如自己在import caffe 或者import tensorflow的時候,會明顯覺得有延時。可以用imp.reload(***)使得模組重新被執行,但是reload之前必須保證模組已經被匯入。模組被import之後,模組檔案中定義的變數,作為這個模組的屬性可以被呼叫,這個模組就是乙個命名空間。from module import a這裡的a可以直接被使用,但是這樣就有變數名重讀被覆蓋的風險。

dir(module)會列出所有可用的屬性,但是會多一些,比如__builtins__,doc,file,__name__和__package__這些是python預定義的內建屬性,自己在debuger中可以看到。

模組在匯入的時候會預設在當前路徑下搜尋,所以如果沒有在當前路徑下會找到不到,除非這個路徑在pythonpath這個環境變數中列出,這就是我們安裝caffe和tensorflow時要配置環境變數的原因。因為python會從pythonpath中初始化,並增加python自帶的標準目錄。

Django學習 第一部分

建立並啟用虛擬環境後,在shell提示符這下輸入命令 pip install django 可以去看官方教程非常詳細 在教程中會引導你完成基本的輪詢應用程式的建立 它有兩部分組成 python m django versoin如果安裝了django,我們可以看到安裝的版本,如果沒有將會受到類似 no...

Axure RP 第一部分

axure rp是乙個專業的快速原型設計工具。axure 發音 ack sure 代表美國axure公司 rp則是rapid prototyping 快速原型 的縮寫。axure rp是美國axure software solution公司旗艦產品,是乙個專業的快速原型設計工具,讓負責定義需求和規格...

第一部分 初識Solr

第一章 solr簡介 這章主要包括內容 這本書講述nosql技術,apache solr 像它的非關係模式兄弟一樣,針對於某些問題進行了優化。特別的,solr在處理企業級大量資料 及時搜尋 文字資料 返回相關性結果等方面進行了很大優化。這裡說的只是冰山一角,讓我們從下面幾方面來進行詳細敘說 solr...