99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

python包、模塊和庫是什么

python爬蟲知識分享 ? 來源:python爬蟲知識分享 ? 作者:python爬蟲知識分享 ? 2022-03-09 16:47 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. 模塊

.py 為后綴的文件,我們稱之為 模塊,英文名 Module。

模塊讓你能夠有邏輯地組織你的 Python 代碼段,把相關(guān)的代碼分配到一個模塊里能讓你的代碼更好用,更易懂。

假設(shè)現(xiàn)在有一個名為 demo.py 的文件,文件內(nèi)容如下

name="Python編程時光"
print("導入成功")

直接使用 import 語句就可以導入,導入之后,就可以使用 模塊名.變量名 的方式訪問這個變量。

>>> import demo
導入成功
>>> demo.name
'Python編程時光'

在導入模塊的時候,有一個非常重要的全局變量需要掌握,那就是 __name__ 這個變量。

現(xiàn)在把 demo.py 的內(nèi)容改成

$ cat demo.py
print("__name__ 的值為: " + __name__)

當模塊被直接執(zhí)行時, __name__ 的值為 __main__

$ python demo.py
__name__ 的值為: __main__

當模塊被導入時, __name__ 的值為 模塊名

>>> import demo
__name__ 的值為: demo

當該模塊被導入后,會在當前目錄下產(chǎn)生一個 叫做 __pycache__ 的緩存文件夾。

$ tree
.
├── __pycache__
│ └── demo.cpython-39.pyc
└── demo.py

這個文件夾有什么用呢?

簡單來說,當你導入模塊的時候,Python解釋器會把模塊的代碼編譯成字節(jié)碼,并放入 __pycache__文件夾中。

這樣以后再次運行的話,如果被調(diào)用的模塊未發(fā)生改變,那就直接跳過編譯這一步,直接去__pycache__文件夾中去運行相關(guān)的 *.pyc 文件,大大縮短了項目運行前的準備時間。

2. 包

在早一點的 Python 版本(Python 3.3 之前)中,如果一個文件夾下有一個 __init__.py 文件,那我們就稱之為包,英文名 Package。

在后來的 Python 版本(Python 3.3 開始)中,就沒有這個要求了,只要是文件夾就可以當做包,我們稱之為空間命名包,為做區(qū)分,我把上面那種包稱之為 傳統(tǒng)包。

考慮到很多人其實并不需要接觸到空間命名包,所以我將空間命名包的內(nèi)容單獨放在一節(jié)里,為選讀章節(jié)。

今天這節(jié)里主要講講傳統(tǒng)包的內(nèi)容。

傳統(tǒng)包里的 __init__.py 可以為空文件,但一定要有該文件,它是包的標志性文件,在需要情況下可以在里面進行一些包的初始化工作。

$ tree
.
└── demo
    ├── __init__.py
    ├── bar.py
    └── foo.py

一個包里可以有多個模塊,比如上面的 foo.pybar.py 都屬于 demo 模塊。

如果要使用這些模塊,就需要這樣導入

>>> import demo.foo
成功導入 foo.py
>>> import demo.bar
成功導入 bar.py

或者這樣

>>> from demo import foo
成功導入 foo.py
>>> from demo import bar
成功導入 bar.py

3. 庫

Python 庫是指一定功能的代碼集合,通常認為他是一個完整的項目打包。

庫->包->模塊,是從大到小的層級關(guān)系!

庫:一個庫可能由多個包和模塊組成

包:一個包可能由多個模塊組成

模塊:一堆函數(shù)、類、變量的集合

審核編輯:符乾江

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 模塊
    +關(guān)注

    關(guān)注

    7

    文章

    2787

    瀏覽量

    50325
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4827

    瀏覽量

    86678
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    ?如何在虛擬環(huán)境中使用 Python,提升你的開發(fā)體驗~

    RaspberryPiOS預裝了Python,你需要使用其虛擬環(huán)境來安裝。今天出版的最新一期《TheMagPi》雜志刊登了我們文檔負責人NateContino撰寫的一篇實用教程,幫助你入門
    的頭像 發(fā)表于 03-25 09:34 ?330次閱讀
    ?如何在虛擬環(huán)境中使用 <b class='flag-5'>Python</b>,提升你的開發(fā)體驗~

    運行OVModelForCausalLM Python模塊時出錯了,怎么解決?

    創(chuàng)建了一個自定義 Python* 代碼,類似于遵循 240-dolly-2-instruction 的 Jupyter 筆記本。 OVModelForCausalLM Python* 模塊運行時出錯。
    發(fā)表于 03-05 06:44

    Python Connector for InterBase連接解決方案

    ,以對存儲的數(shù)據(jù)執(zhí)行創(chuàng)建、讀取、更新和刪除操作。該解決方案完全符合 Python DB API 2.0 規(guī)范,并作為 Windows、macOS 和 Linux 的 wheel 分發(fā)。 特征 高性能
    的頭像 發(fā)表于 01-22 14:34 ?444次閱讀

    使用Python實現(xiàn)xgboost教程

    裝: bash復制代碼conda install -c conda-forge xgboost 2. 導入必要的 在你的Python腳本或Jupyter Notebook中,導入必要的
    的頭像 發(fā)表于 01-19 11:21 ?1354次閱讀

    適用于MySQL和MariaDB的Python連接器:可靠的MySQL數(shù)據(jù)連接器和數(shù)據(jù)

    和 Linux 的 wheel 分發(fā)。 直接連接 該解決方案使您能夠通過 TCP/IP 建立與 MySQL 或者 MariaDB 數(shù)據(jù)服務(wù)器的直接連接,而無需數(shù)據(jù)客戶端。另外
    的頭像 發(fā)表于 01-17 12:18 ?486次閱讀
    適用于MySQL和MariaDB的<b class='flag-5'>Python</b>連接器:可靠的MySQL數(shù)據(jù)連接器和數(shù)據(jù)<b class='flag-5'>庫</b>

    適用于Oracle的Python連接器:可訪問托管以及非托管的數(shù)據(jù)

    適用于 Oracle 的 Python 連接器 適用于 Oracle 的 Python 連接器是一種可靠的連接解決方案,用于從 Python 應(yīng)用程序訪問 Oracle 數(shù)據(jù)服務(wù)器和
    的頭像 發(fā)表于 01-14 10:30 ?464次閱讀

    數(shù)據(jù)事件觸發(fā)的設(shè)置和應(yīng)用

    數(shù)據(jù)無論對于生產(chǎn)管理還是很多的實際應(yīng)用都非常重要。小編這次聊一下數(shù)據(jù)事件觸發(fā)的應(yīng)用。示例使用了postgresql和Python。
    的頭像 發(fā)表于 12-13 15:14 ?631次閱讀

    使用Python進行串口通信的案例

    當然!以下是一個使用Python進行串口通信的簡單示例。這個示例展示了如何配置串口、發(fā)送數(shù)據(jù)以及接收數(shù)據(jù)。我們將使用 pyserial ,這是一個非常流行的用于串口通信的Python
    的頭像 發(fā)表于 11-22 09:11 ?1455次閱讀

    如何使用Python構(gòu)建LSTM神經(jīng)網(wǎng)絡(luò)模型

    構(gòu)建一個LSTM(長短期記憶)神經(jīng)網(wǎng)絡(luò)模型是一個涉及多個步驟的過程。以下是使用Python和Keras構(gòu)建LSTM模型的指南。 1. 安裝必要的 首先,確保你已經(jīng)安裝了Python
    的頭像 發(fā)表于 11-13 10:10 ?1560次閱讀

    Python解析:通過實現(xiàn)代理請求與數(shù)據(jù)抓取

    Python中,有多個可以幫助你實現(xiàn)代理請求和數(shù)據(jù)抓取。這些提供了豐富的功能和靈活的API,使得你可以輕松地發(fā)送HTTP請求、處理響應(yīng)、解析HTML/XML/JSON數(shù)據(jù),以及進行復雜的網(wǎng)絡(luò)操作。
    的頭像 發(fā)表于 10-24 07:54 ?483次閱讀

    使用Python進行Ping測試

    )請求,然后等待目標主機返回響應(yīng),從而測量網(wǎng)絡(luò)的延遲和丟情況。隨著Python編程語言的廣泛應(yīng)用,越來越多的網(wǎng)絡(luò)工程師開始使用Python
    的頭像 發(fā)表于 08-12 17:56 ?1002次閱讀
    使用<b class='flag-5'>Python</b>進行Ping測試

    pytorch和python的關(guān)系是什么

    在當今的人工智能領(lǐng)域,Python已經(jīng)成為了最受歡迎的編程語言之一。Python的易學易用、豐富的和框架以及強大的社區(qū)支持,使其成為了數(shù)據(jù)科學、機器學習和深度學習等領(lǐng)域的首選語言。而在深度學習領(lǐng)域
    的頭像 發(fā)表于 08-01 15:27 ?3265次閱讀

    Python建模算法與應(yīng)用

    上成為理想的腳本語言,特別適用于快速的應(yīng)用程序開發(fā)。本文將詳細介紹Python在建模算法中的應(yīng)用,包括常見的建模算法、Python在建模中的優(yōu)勢、常用以及實際案例。
    的頭像 發(fā)表于 07-24 10:41 ?1246次閱讀

    如何實現(xiàn)Python復制文件操作

    Python 中有許多“開蓋即食”的模塊(比如 os,subprocess 和 shutil)以支持文件 I/O 操作。在這篇文章中,你將會看到一些用 Python 實現(xiàn)文件復制的特殊方法。下面我們開始學習這九種不同的方法來實現(xiàn)
    的頭像 發(fā)表于 07-18 14:53 ?793次閱讀

    opencv-python和opencv一樣嗎

    不一樣。OpenCV(Open Source Computer Vision Library)是一個開源的計算機視覺和機器學習軟件,它提供了大量的圖像和視頻處理功能。OpenCV-Python
    的頭像 發(fā)表于 07-16 10:38 ?2075次閱讀