好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Python--模塊(Module)和包(Package)詳解

Python--模塊(Module)和包(Package)詳解

熱門標簽:徐州天音防封電銷卡 哈爾濱外呼系統代理商 湛江電銷防封卡 南昌辦理400電話怎么安裝 獲客智能電銷機器人 佛山防封外呼系統收費 鄭州智能外呼系統運營商 電話機器人適用業務 不錯的400電話辦理

一、模塊的導入

1.什么是模塊(module)

模塊就是Python文件,里面定義了很多的函數、類、變量 一個完整大型的python程序是由模塊和包的形式組織起來的,可見模塊在python中的重要 性。

2.模塊有什么作用

在python交互式解釋器中操作輸入的代碼,在退出python時是不會被保存的; 而模塊文 件中的代碼是永久存在的。
減少重復代碼, 減少工作量(寫的量、改的量)、代碼更優雅、拿來主義

3.模塊的分類

  • 標準模塊(庫)
  • 第三方模塊(庫)
  • 自定義模塊

Python許多時候自己定義的函數,需要經常調用時;就可以自己定義一個模塊,將常用函數寫入模塊里,下次使用常用函數時直接導入模塊,就可以使用函數了

4.什么是包(package)

Python包實際上是一個目錄

包結構的目錄里面可以有一個__init__.py模塊

py2與py3 的區別

py2:init.py是必須的

py3:init.py是可選的

模塊和包名要盡量和內置的模塊名不相同,不然會覆蓋內置的模塊

5.import/fromimport導入


6.使用名字導入

7.制作包與模塊

包pack01:one.py,two.py,three.py

包pack02:three.py

文件內容:print(“我是xxx.py”)


8.同一個模塊重復導入


當同一個模塊重復導入時,只執行第一次

導入重名的模塊


兩個都會執行,當前生效的是后導入的模塊

重名的模塊,as取別名


9.相對導入

相對導入使用.或…來進行導入

相對導入只能導入包中的模塊/子包

Python會自動識別一個目錄是不是包對于當前被執行的文件來說:

當前執行文件所在目錄不是一個包

子目錄及更深的目錄都是包

10.模塊查找順序

注意:不要跟Python內置的這些模塊重名

查找順序:

1.Python中所有加載到內存的模塊都放在sys.modules。當import一個模塊時首先會在這個列表中查找是否已經加載了此模塊,如果加載了則只是將模塊的名字加入到正在調用import的模塊的Local名字空間中。如果沒有加載則從sys.path目錄中按照模塊名稱查找模塊文件

2.如果都沒有找到模塊名就報錯

二、Python下劃線

標識符是用來標識某種對象的名稱。以下劃線開頭的標識符是有特殊意義的。

1.制作包與模塊

包code:init.py,model.py,_model.py

文件內容:print(“我是xxx.py”)


包code:init.py,model.py,_model.py model.py

文件內容


2.下劃線的特殊含義(模塊)

以單下劃線開頭的(_foo)

表示保護對象,不能用from xxx import導入包/模塊以雙下劃線開頭的(__foo)

表示私有對象,不能用from xxx import導入包/模塊以雙下劃線開頭和結尾的(foo)

代表Python中特殊方法專用的標識,不建議用戶使用這種命名方式。




定義package中的__all__,用來模糊導入

導入一個package,就會首先調用該package的__init__.py文件,用來初始化模塊包

編寫Python代碼(不建議在__init__中寫python模塊,可以在包中在創建另外的模塊來寫,盡量保證__init__.py簡單)

內置屬性:name

當自己執行時,等于__name__的值為__main__

當被作為模塊導入,等于文件名(不包含后綴, 可含模塊名)

三.文件與模塊執行過程

  • Python模塊導入執行的過程
  • 通過sys.path環境變量找到模塊文件
  • 編譯成字節碼文件(pyc文件)
  • 如果字節碼過期了會自動重新生成
  • 如果字節碼文件已存在則直接導入字節碼文件
  • 執行模塊中的代碼來創建所定義的對象

四.模塊打包與發布

1.如何分享模塊

如何我們寫了一個計算Fab第N項的函數,如何分享給別人呢?

拷貝? 導入問題?依賴問題?

2.如何使用別人的模塊

我們是如何使用第三方模塊的?

pip  tar .gz

3.setuptools工具

Setuptools是一個給開發者構建和發布python包的工具,特別是當包依賴于其他包時。

官方文檔:https://docs.python.org/3/distutils/examples.html

五.軟件目錄結構規范

1.定義目錄結構目的

  • 可讀性高 不熟悉這個項目的代碼的人,一眼就能看懂目錄結構,知道程序啟動腳本是哪個,測試目錄在哪 兒,配置文件在哪兒等等。從而非常快速的了解這個項目。
  • 可維護性、可擴展性好 定義好組織規則后,維護者就能很明確地知道,新增的哪個文件和代碼應該放在什么目錄之下。這 個好處是,隨著時間的推移,代碼/配置的規模增加,項目結構不會混亂,仍然能夠組織良好。

2.軟件目錄結構規范

docs => 文檔

REMEME.txt

LICENSE

Data

3.如何用導入模塊與包

用相對導入的方式導入數據

六. 課后作業

總結

對于pyhton模塊命名空間作用域, 一定要注意成員變量的范圍

對于__name__屬性的使用, 防止代碼大量加載運行

對于模塊的導入的幾種方式要靈活去運用

Python模塊的打包

軟件目錄結構

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!

您可能感興趣的文章:
  • 五分鐘學會Python 模塊和包、文件
  • Python如何將模塊打包并發布
  • python 制作python包,封裝成可用模塊教程
  • Python包和模塊的分發詳細介紹
  • Python安裝依賴(包)模塊方法詳解

標簽:安康 懷化 蘭州 廣西 呂梁 蕪湖 吉安 紹興

巨人網絡通訊聲明:本文標題《Python--模塊(Module)和包(Package)詳解》,本文關鍵詞  Python--,模塊,Module,和包,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python--模塊(Module)和包(Package)詳解》相關的同類信息!
  • 本頁收集關于Python--模塊(Module)和包(Package)詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 《浴室吃奶》电影| 波多野结衣同性女恋006| 69av导航| 91丨国产丨白浆秘?3D| 99久久精品99国产亚洲AV成人| 亚洲欧美综合乱码精品成人网| 富宁县| heyzo里中结衣在线播放| 秘?男女做羞羞在线观看| 香蕉久久夜色精品国产使用方法| ww在线观视频免费观看w| 厦门市| 男女上下爽无遮挡午夜视频| 蜜桃app污| 蜜桃秘?无码一区二区三区| 国产伦精品一区二区三区高清版禁| 国产精品91在线| 久久碰碰人妻国产二区| 好大?好紧?好硬?好硬| 亚洲精品国产免费| 平乐县| 超碰免费小说| 耻辱の女潜入搜查官地狱 | 野生po糙汉| 男人添女人囗交图片| 色戒在线观看电影| 美女久久精品| 憋尿按压小腹肚子不让尿出来| 青草免费免费观看视频在线| 中国亲子乱XXXXXiBD小说| 992TV成人免费A片| japanese色系tube日本熟 | 精品国产Av无码久久久伦古装| 好紧?我要进去C你了高H| 缅甸女人开放吗| 欧美乱妇狂野欧美在线视频| 96电影院| 浪货夹的真紧好爽H男攻男受少爷 男生寝室里颤抖到高潮H小说 | av无码精品久久久久精品| 色yeye香蕉凹凸一区二区-| 我要c死你小荡货高h视频|