一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

python包、模塊和庫是什么

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

掃碼添加小助手

加入工程師交流群

1. 模塊

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

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

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

name="Python編程時(shí)光"
print("導(dǎo)入成功")

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

>>> import demo
導(dǎo)入成功
>>> demo.name
'Python編程時(shí)光'

在導(dǎo)入模塊的時(shí)候,有一個(gè)非常重要的全局變量需要掌握,那就是 __name__ 這個(gè)變量。

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

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

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

$ python demo.py
__name__ 的值為: __main__

當(dāng)模塊被導(dǎo)入時(shí), __name__ 的值為 模塊名

>>> import demo
__name__ 的值為: demo

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

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

這個(gè)文件夾有什么用呢?

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

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

2. 包

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

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

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

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

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

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

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

如果要使用這些模塊,就需要這樣導(dǎo)入

>>> import demo.foo
成功導(dǎo)入 foo.py
>>> import demo.bar
成功導(dǎo)入 bar.py

或者這樣

>>> from demo import foo
成功導(dǎo)入 foo.py
>>> from demo import bar
成功導(dǎo)入 bar.py

3. 庫

Python 庫是指一定功能的代碼集合,通常認(rèn)為他是一個(gè)完整的項(xiàng)目打包。

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

庫:一個(gè)庫可能由多個(gè)包和模塊組成

包:一個(gè)包可能由多個(gè)模塊組成

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

審核編輯:符乾江

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

    關(guān)注

    7

    文章

    2786

    瀏覽量

    50116
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4826

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

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

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

    運(yùn)行OVModelForCausalLM Python模塊時(shí)出錯(cuò)了,怎么解決?

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

    Python Connector for InterBase連接解決方案

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

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

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

    適用于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 ?473次閱讀
    適用于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 ?441次閱讀

    使用Python進(jìn)行串口通信的案例

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

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

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

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

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

    使用Python進(jìn)行Ping測(cè)試

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

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

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

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

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

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

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

    opencv-python和opencv一樣嗎

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

    python訓(xùn)練出的模型怎么調(diào)用

    使用pickle模塊 pickle 是Python的一個(gè)內(nèi)置模塊,用于序列化和反序列化Python對(duì)象結(jié)構(gòu)。使用 pickle 可以方便地保存和加載模型。 import pickle
    的頭像 發(fā)表于 07-11 10:15 ?3303次閱讀