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

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

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

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

詳解Python項目推薦結(jié)構(gòu)

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

掃碼添加小助手

加入工程師交流群

在真正項目中,一般使用PyCharm或VSCode開發(fā)。那有的小伙伴就問了,項目文件目錄有沒有一個標(biāo)準(zhǔn)的結(jié)構(gòu)?

應(yīng)該沒有唯一的統(tǒng)一標(biāo)準(zhǔn),但Python社區(qū)大佬Kenneth Reitz在2013年提出一個Python項目目錄結(jié)構(gòu),推薦你日后項目中參考。

Python項目推薦結(jié)構(gòu)
Kenneth推薦目錄結(jié)構(gòu),如下所示:

samplemod-master
├── LICENSE
├── MANIFEST.in
├── Makefile
├── README.rst
├── docs
│   ├── Makefile
│   ├── conf.py
│   ├── index.rst
│   └── make.bat
├── requirements.txt
├── sample
│   ├── __init__.py
│   ├── core.py
│   └── helpers.py
├── setup.py
└── tests
   ├── __init__.py
   ├── context.py
   ├── test_advanced.py
   └── test_basic.py
一共3個文件夾,17個文件。

先來看看第一個文件夾docs,它是項目相關(guān)文檔,包括依賴包安裝的Makefile和make.bat,項目配置conf.py,項目介紹文檔index.rst,是比README.rst更細(xì)化的一個文檔,README.rst更像一個項目總覽。

第二個文件夾sample,在Python中一般叫做包(package),它是項目核心代碼,一般會有多個這種包,__init__.py是Python包包括的文件。core.py和helpers.py是sample包里兩個核心模塊。

第三個包tests,是對應(yīng)于sample包的單元測試包,里面的模塊名稱一般以test開頭,測試sample里的每個模塊。

setup.py是做什么的?
有了上面三個最主要的包外,文件最重要的有setup.py,這個文件是做什么的?

簡單來說,setup.py是和打包相關(guān)的配置模塊,一般結(jié)合setuptools。

有了setup.py,我們就可以安裝包到本地全局環(huán)境,或者上傳到PyPi,這樣全世界開發(fā)者都有機(jī)會搜索到你的包,并使用pip安裝上你的包。

里面代碼相對比較標(biāo)準(zhǔn)和固定,比如在這個項目里代碼如下:

from setuptools import setup, find_packages

with open('README.rst') as f:
   readme = f.read()
with open('LICENSE') as f:
   license = f.read()
setup(
   name='sample',
   version='0.1.0',
   description='Sample package for Python-Guide.org',
   long_description=readme,
   author='Kenneth Reitz',
   author_email='me@kennethreitz.com',
   url='https://github.com/kennethreitz/samplemod',
   license=license,
   packages=find_packages(exclude=('tests', 'docs'))
)

看到這里面用到README.rst和LICENSE文件,并且指定打哪些包分發(fā)出去。
審核編輯:湯梓紅

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

    關(guān)注

    1

    文章

    119

    瀏覽量

    21996
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4827

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    基礎(chǔ)篇3:掌握Python中的條件語句與循環(huán)

    Python編程語言中,條件語句和循環(huán)是構(gòu)成復(fù)雜邏輯和數(shù)據(jù)處理的基石。本篇基礎(chǔ)教程將幫助您深入了解Python中的條件語句和循環(huán)結(jié)構(gòu),讓您能夠更好地控制程序流程。 條件語句 條件語句允許程序根據(jù)
    發(fā)表于 07-03 16:13

    STM32項目分享:智能鞋柜

    01—項目簡介1.功能詳解STM32智能鞋柜功能如下:DHT11檢測鞋柜溫濕度,溫度低于閾值開啟加熱,濕度高于閾值開啟加熱和通風(fēng);P
    的頭像 發(fā)表于 05-27 18:04 ?316次閱讀
    STM32<b class='flag-5'>項目</b>分享:智能鞋柜

    python入門圣經(jīng)-高清電子書(建議下載)

    和Pygal 等強(qiáng)大的Python 庫和工具介紹,以及列表、字典、if 語句、類、文件與異常、代碼測試等內(nèi)容; 第二部分將理論付諸實踐,講解如何開發(fā)三個項目,包括簡單的Python 2D 游戲開發(fā)如何利用數(shù)據(jù)
    發(fā)表于 04-10 16:53

    在線監(jiān)測管理系統(tǒng)的智能化功能詳解 多角色權(quán)限與多項目管理 多終端適配

    在線監(jiān)測管理系統(tǒng)的智能化功能詳解 多角色權(quán)限與多項目管理 多終端適配 在線監(jiān)測管理系統(tǒng)采用基于BS架構(gòu)設(shè)計,用戶可通過瀏覽器實現(xiàn)項目管理、數(shù)據(jù)查看與下載、曲線分析等操作。系統(tǒng)界面設(shè)計遵循簡約統(tǒng)一
    的頭像 發(fā)表于 03-19 17:18 ?354次閱讀

    NucleiStudio編譯沒報錯但是項目結(jié)構(gòu)中有錯,為什么?

    想請教一下各位大佬為什么這個軟件在Project Explorer頁面明明顯示有錯誤,但點擊左上角的build按鈕卻不報錯呢,不太理解這個項目結(jié)構(gòu)啊。。。是某部分沒有include目錄嗎?項目
    發(fā)表于 03-07 15:29

    Python繪圖Matplotlib快速參考手冊

    ?PYTHON
    發(fā)表于 02-07 14:04 ?0次下載

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

    使用Python實現(xiàn)XGBoost模型通常涉及以下幾個步驟:數(shù)據(jù)準(zhǔn)備、模型訓(xùn)練、模型評估和模型預(yù)測。以下是一個詳細(xì)的教程,指導(dǎo)你如何在Python中使用XGBoost。 1. 安裝XGBoost
    的頭像 發(fā)表于 01-19 11:21 ?1381次閱讀

    Triton編譯器安裝步驟詳解

    :用于構(gòu)建項目Python :用于運行 Triton 的 Python 綁定。 其他依賴 :根據(jù)您選擇的架構(gòu),可能需要額外的依賴。 2. 安裝依賴 對于 Linux: 打開終端并運行以下命令來安
    的頭像 發(fā)表于 12-24 17:35 ?2634次閱讀

    STM32項目分享:智能臺燈系統(tǒng)

    01—項目簡介1.功能詳解基于STM32智能臺燈系統(tǒng)。功能如下:亮度控制:按鍵控制照明燈的亮度(5擋亮度)計時功能:按鍵啟動計時,累
    的頭像 發(fā)表于 11-29 01:02 ?2082次閱讀
    STM32<b class='flag-5'>項目</b>分享:智能臺燈系統(tǒng)

    Python代理技術(shù)詳解:從入門到進(jìn)階

    Python代理技術(shù)是一種在網(wǎng)絡(luò)編程中廣泛使用的技術(shù),它允許通過代理服務(wù)器發(fā)送和接收網(wǎng)絡(luò)請求。
    的頭像 發(fā)表于 11-12 07:06 ?635次閱讀

    如何幫助孩子高效學(xué)習(xí)Python:開源硬件實踐是最優(yōu)選擇

    家長們常常擔(dān)心孩子在學(xué)習(xí)Python時所面臨的挑戰(zhàn),如復(fù)雜性、興趣保持、學(xué)習(xí)進(jìn)度和可用資源。對于希望有效教授孩子Python的家長而言,了解硬件的作用至關(guān)重要,因為結(jié)合硬件項目Python
    的頭像 發(fā)表于 09-06 09:49 ?675次閱讀

    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 ?3283次閱讀

    STM32項目分享:智慧農(nóng)業(yè)(機(jī)智云)系統(tǒng)

    目錄一、前言二、項目簡介1、功能詳解2、主要器件三、原理圖設(shè)計四、PCB硬件設(shè)計1、PCB圖2、PCB板打樣焊接圖五、程序設(shè)計六、實驗效果七、資料內(nèi)容項目分享一、前
    的頭像 發(fā)表于 07-27 08:10 ?1495次閱讀
    STM32<b class='flag-5'>項目</b>分享:智慧農(nóng)業(yè)(機(jī)智云)系統(tǒng)

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

    Python作為一種功能強(qiáng)大、免費、開源且面向?qū)ο蟮木幊陶Z言,在科學(xué)計算、數(shù)學(xué)建模、數(shù)據(jù)分析等領(lǐng)域展現(xiàn)出了卓越的性能。其簡潔的語法、對動態(tài)輸入的支持以及解釋性語言的本質(zhì),使得Python在多個平臺
    的頭像 發(fā)表于 07-24 10:41 ?1267次閱讀

    Python在AI中的應(yīng)用實例

    Python在人工智能(AI)領(lǐng)域的應(yīng)用極為廣泛且深入,從基礎(chǔ)的數(shù)據(jù)處理、模型訓(xùn)練到高級的應(yīng)用部署,Python都扮演著至關(guān)重要的角色。以下將詳細(xì)探討Python在AI中的幾個關(guān)鍵應(yīng)用實例,包括機(jī)器學(xué)習(xí)、深度學(xué)習(xí)、自然語言處理、
    的頭像 發(fā)表于 07-19 17:16 ?2708次閱讀