本文主要以python2為例。首先介紹一下python標頭檔案的程式設計風格,然後再給大家詳細介紹import部分的基本用法。這兩個部分就是python中標頭檔案的組成模組。
程式設計風格#!/usr/bin/env python #在檔案頭部 ( 第一行 ) 加上 設定 python 直譯器
# -*- coding: utf-8 -*- #在檔案頭部 ( 第二行 ) 加上 在編輯器中設定以 utf-8 預設編碼儲存檔案
# docstring 是python特有的注釋風格,它是模組、類或函式的第乙個語句,可以通過__doc__方法訪問
# 用英語撰寫注釋,短注釋可以忽略末尾的句號 (.)
# docstring 為每個模組、類或函式撰寫
docstring 推薦使用三個雙引號(」」」) 來定義
」」」this is a one line docstring.」」」
」」」the title of a multiline docstring: after title is the content.you can write it as long
as needed. 」」」 # 把 import 語句放在檔案頭部,在模組 docstring 之後,在模組全域性變數或全域性常量之前
# 按照從一般到特殊的原則分組
import 語句,先 import 標準庫,然後 import 第三方庫,最後 import 程式中的自定義庫
# 在不同分組的 import 語句之間加空行 # 每個 import 語句只匯入乙個模組
import sys
import time
from pyqt.qtcore import signal, qtimer # 在終端中使用中文字元 在檔案頭部加上
# import sys
# reload(sys)
# sys.setdefaultencoding('utf-8')
import
1、系統庫的應用
這裡說的系統庫,一般是指python軟體自帶的庫,不是從第三方安裝的庫。比如說,如果import sys了,會怎麼列印。>>> import sys
>>> print sys
這說明sys庫很有可能就是嵌入在python裡面的,根本沒有辦法刪除。那是不是所有的庫都是這樣呢,我們可以找os試一試:>>> import os
>>> print os
很明顯,這裡的os庫是由pyc提供的,所以從優先順序來說,似乎sys還要更重要一些。
2、第三方庫
所謂第三方庫,就是通過python setup.py install安裝、pip安裝或者通過apt-get install安裝的庫。這類庫很多,我自己常用的就有webpy、twisted、cv2、sklearn、wxpython,這些lib無一例外,都是以pyc的形式存在的。比如說,我們看一下webpy:>>> import web
>>> print web
3、本地目錄檔案引用
如果是本地檔案引用,其實方法也很簡單,直接import一下就可以了。如果import成功,python就會生成對應檔案的pyc檔案。比如說,exer1.py想引用一下exer2.py中的函式,那麼它可以這麼做:import exer2
或者是from exer2 import *
其次,要注意的是,這種方法不光適用於python,也適用於動態庫檔案。我們知道,有的時候為了擴充套件python功能,需要寫c檔案生成動態庫供python使用。有興趣的同學可以參考這個鏈結。這個時候,如果需要引用動態庫檔案,直接import檔名就可以了。
4、引用子目錄檔案
除了同級目錄引用之外,另外用的比較多的就是子目錄引用。比如說,exer1.py和sub目錄在乙個資料夾下面,如果exer1.py想引用sub下面的exer2.py,那麼它應該怎麼做呢?這個時候,一定要保證sub目錄下有__init__.py檔案。from sub import exer2
或者是,from sub.exer2 import *
5、子目錄引用父目錄
有的時候,子目錄為了使用父目錄或者其他目錄(類似util目錄)的一些功能,常常要反向引用。這個時候,sys庫就派上了用場。假設exer1.py和sub目錄在同一級,sub目錄下有乙個exer2.py檔案,這個時候exer2.py想引用exer1.py的功能,那麼它可以這麼操作:import sys
import exer1
或者是,import sys
from exer1 import *
6、交叉引用
如果有兩個檔案交叉引用,這個時候我建議可以保留乙個檔案的引用,另外乙個檔案的引用可以放到函式下面來做,比如說像這樣:def process():
import exer1
exer1.add()
7、import檔案的順序建議
關於python下import檔案的順序,我個人的經驗是這樣安排比較合理一些,
built-in 系統庫
其他系統庫
第三方庫
子目錄庫
本地其他檔案等等
python怎麼成為高手 如何成為Python高手
這篇文章主要是對我收集的一些文章的摘要。因為已經有很多比我有才華的人寫出了大量關於如何成為優秀python程式設計師的好文章。我的總結主要集中在四個基本題目上 函式式程式設計,效能,測試,編碼規範。如果乙個程式設計師能將這四個方面的內容知識都吸收消化,那他 她不管怎樣都會有巨大的收穫。函式式程式設計...
python物件怎麼理解 如何理解python物件
類 class 抽象的概念,比如說人類 鳥類 水果 是乙個總的稱呼,沒有具體到某個物體 物件 object,指具體例項,instance 給物件增加乙個例項變數 增加乙個skills例項變數 p.skills programming writing print p.skills 刪除p物件的name...
新手該如何學python怎麼學好python
1 學好python的第一步,就是馬上到 3 學完了基本語法後,就可以進行互動式學習了。python具備很好的互動學習模式,對於書本上的例子我們可以通過互動平台進行操練,通過練習加深印象,達到學習掌握的目的。4 通過以上三個步驟的學習後,我們大致掌握了python的常用方法 關鍵字用法以及函式語法等...