創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!
成都創(chuàng)新互聯(lián)主營鐘祥網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,app軟件開發(fā),鐘祥h5微信小程序開發(fā)搭建,鐘祥網(wǎng)站營銷推廣歡迎鐘祥等地區(qū)企業(yè)咨詢小編給大家分享一下python頭文件的編程風(fēng)格,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
本文主要以python2為例。首先介紹一下Python頭文件的編程風(fēng)格,然后再給大家詳細介紹import部分的基本用法。這兩個部分就是Python中頭文件的組成模塊。
編程風(fēng)格
#!/usr/bin/env python #在文件頭部 ( 第一行 ) 加上 設(shè)置 Python 解釋器 # -*- coding: utf-8 -*- #在文件頭部 ( 第二行 ) 加上 在編輯器中設(shè)置以 UTF-8 默認(rèn)編碼保存文件 # Copyright (c) *** #版權(quán)信息放在文件頭部,文件編碼之后 # docstring 是Python特有的注釋風(fēng)格,它是模塊、類或函數(shù)的第一個語句,可以通過__doc__方法訪問 # 用英語撰寫注釋,短注釋可以忽略末尾的句號 (.) # docstring 為每個模塊、類或函數(shù)撰寫 docstring 推薦使用三個雙引號(”””) 來定義 docsting , 不推薦使用三個單引號 (''') # 模塊的 docsting 放在文件頭部,版權(quán)信息之后 ”””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 標(biāo)準(zhǔn)庫,然后 import 第三方庫,最后 import 程序中的自定義庫 # 在不同分組的 import 語句之間加空行 # 每個 import 語句只導(dǎo)入一個模塊 import sys import time from PyQt.QtCore import SIGNAL, QTimer # 在終端中使用中文字符 在文件頭部加上 # import sys # reload(sys) # sys.setdefaultencoding('utf-8')
import
1、系統(tǒng)庫的應(yīng)用
這里說的系統(tǒng)庫,一般是指python軟件自帶的庫,不是從第三方安裝的庫。比如說,如果import sys了,會怎么打印。
>>> import sys >>> print sys <module 'sys' (built-in)>
這說明sys庫很有可能就是嵌入在python里面的,根本沒有辦法刪除。那是不是所有的庫都是這樣呢,我們可以找os試一試:
>>> import os >>> print os <module 'os' from '/usr/local/Cellar/python/2.7.13/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.pyc'>
很明顯,這里的os庫是由pyc提供的,所以從優(yōu)先級來說,似乎sys還要更重要一些。
2、第三方庫
所謂第三方庫,就是通過python setup.py install安裝、pip安裝或者通過apt-get install安裝的庫。這類庫很多,我自己常用的就有webpy、twisted、cv2、sklearn、wxpython,這些lib無一例外,都是以pyc的形式存在的。比如說,我們看一下webpy:
>>> import web >>> print web <module 'web' from '/usr/local/lib/python2.7/site-packages/web.py-0.40.dev0-py2.7.egg/web/__init__.pyc'>
3、本地目錄文件引用
如果是本地文件引用,其實方法也很簡單,直接import一下就可以了。如果import成功,python就會生成對應(yīng)文件的pyc文件。比如說,exer1.py想引用一下exer2.py中的函數(shù),那么它可以這么做:
import exer2
或者是
from exer2 import *
其次,要注意的是,這種方法不光適用于python,也適用于動態(tài)庫文件。我們知道,有的時候為了擴展python功能,需要寫c文件生成動態(tài)庫供python使用。有興趣的同學(xué)可以參考這個鏈接。這個時候,如果需要引用動態(tài)庫文件,直接import文件名就可以了。
4、引用子目錄文件
除了同級目錄引用之外,另外用的比較多的就是子目錄引用。比如說,exer1.py和sub目錄在一個文件夾下面,如果exer1.py想引用sub下面的exer2.py,那么它應(yīng)該怎么做呢?這個時候,一定要保證sub目錄下有__init__.py文件。
from sub import exer2
或者是,
from sub.exer2 import *
5、子目錄引用父目錄
有的時候,子目錄為了使用父目錄或者其他目錄(類似util目錄)的一些功能,常常要反向引用。這個時候,sys庫就派上了用場。假設(shè)exer1.py和sub目錄在同一級,sub目錄下有一個exer2.py文件,這個時候exer2.py想引用exer1.py的功能,那么它可以這么操作:
import sys sys.path.append('../') import exer1
或者是,
import sys sys.path.append('../') from exer1 import *
6、交叉引用
如果有兩個文件交叉引用,這個時候我建議可以保留一個文件的引用,另外一個文件的引用可以放到函數(shù)下面來做,比如說像這樣:
def process(): import exer1 exer1.add()
7、import文件的順序建議
關(guān)于python下import文件的順序,我個人的經(jīng)驗是這樣安排比較合理一些,
built-in 系統(tǒng)庫
其他系統(tǒng)庫
第三方庫
子目錄庫
本地其他文件等等
看完了這篇文章,相信你對python頭文件的編程風(fēng)格有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!
當(dāng)前題目:python頭文件的編程風(fēng)格-創(chuàng)新互聯(lián)
標(biāo)題路徑:http://aaarwkj.com/article24/phjce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、商城網(wǎng)站、網(wǎng)站營銷、搜索引擎優(yōu)化、企業(yè)網(wǎng)站制作、定制開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容