當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python Pyscaffold用法及代碼示例

從 Python 項目開始通常非常複雜,因為它涉及設置和配置一些文件。這是哪裏pyscaffold它是一個用於設置新的 python 項目的工具,非常易於使用,並且在 10 秒內即可設置您的項目!要使用 Pyscaffold,Git 是必須的,特別是Windows用戶應該安裝“Git Bash”。此外,安裝PyScaffold還需要最新版本的“setup tools”。
每個Python包項目在內部都由PyScaffold表示為與文件係統中的目錄條目直接相關的樹形數據結構。該樹被實現為一個簡單的字典,其中鍵表示生成文件的路徑,而值表示文件的內容。

安裝

要使用 pip 安裝 Pyscaffold,請執行以下命令來安裝最新的 Pyscaffold 版本:

pip install --upgrade pyscaffold

如果你沒有安裝pip,請參考這篇文章:如何安裝pip命令
PyScaffold 也可以通過在 Anaconda 命令提示符上執行以下操作來與 conda 一起安裝:

conda install -c conda-forge pyscaffold


如果你看到這樣的內容,那麽這意味著Pyscaffold已經安裝成功了!

設置新項目

PyScaffold 附帶許多特性和默認配置,使開發、維護和分發您自己的 Python 包的頻繁任務盡可能簡單。
要設置新的 python 項目,請使用 putup 命令:

putup Your_Project

這將創建一個文件夾Your_Project,其中包含Python項目的項目布局,它有一個Your_Project包文件夾以及文檔和測試文件夾以及文件setup.py、setup.cfg、AUTHORS.txt、README.txt和許可證.txt。所有配置都在“setup.cfg”而不是setup.py中完成。在這裏,您可以更改與包相關的所有設置(即作者、URL、許可證等)。另外,要添加其他數據文件,我們可以在setup.cfg中添加它們的名稱,它們將被自動添加。
PyScaffold 旨在涵蓋編寫和分發 Python 包的基本知識。大多數時候,設置放置選項足以確保項目的正確配置。 PyScaffold 可以在運行時由其他 Python 包擴展。還可以編寫嵌入PyScaffold的外部腳本或程序,並使用它來執行一些用戶定義的操作。
例子:

Python3


# Temporarily adjust padding 
# while executing a context.
from pyscaffold.log import logger
logger.report('invoke', 'custom_action')
with logger.indent():
    logger.report('create', 'some / file / path')
# Expected logs:
# --------------------------------------
# invoke  custom_action
# create    some / file / path
# --------------------------------------
# Note how the spacing between activity and
# subject in the
# second entry is greater than the equivalent
# in the first one.

更新:

  • 每當 PyScaffold 發布新更新時,您可以使用此命令來更新
    您的項目的結構/腳手架:
output --update my_project
  • 更新隻會更新用戶不經常使用或修改的文件,因此,
    更新所有文件,使用強製更新:
--update --force
  • Note:
    • 如果您要從 2.0 之前的 PyScaffold 版本進行更新,則必須手動刪除文件 versioneer.py 和 MANIFEST.in。
    • 如果您要從 2.2 之前的版本更新,則必須刪除 ${PACKAGE}/_version.py。

如何遷移到PyScaffold

最初,項目(假設my_project)必須位於 Git 存儲庫上,並包含一個包(假設my_package)以及 python 模塊。
注意:您的工作樹不是髒的,即所有更改都已提交並且所有重要文件都處於版本控製之下。

  • 首先更改為 my_project 的父文件夾,然後鍵入以下命令,以便在存儲庫中部署新的項目結構。
putup my_project --force --no-skeleton -p my_package
  • 更改為 my_project 並使用此命令將舊包文件夾移動到 src 中,如果項目有除測試之外的測試文件夾或除文檔之外的文檔文件夾,請使用相同的技術。
git mv my_package/* src/my_package/
  • 使用 git status 檢查未跟蹤的文件並使用 git add 添加它們。
  • 。最後,使用 git difftool 檢查所有覆蓋的文件是否有需要傳輸的更改。您可能在 setup.py 中完成的所有配置都需要移至 setup.cfg。在大多數情況下,您不需要更改 PyScaffold 提供的新 setup.py 文件。
  • 運行這些命令來檢查一切正常:
run python setup.py install and python setup.pysdist
  • 還運行 python setup.py docs 和 python setup.py test 以檢查 Sphinx 和 PyTest 是否正確運行。


相關用法


注:本文由純淨天空篩選整理自vanigupta20024大神的英文原創作品 Pyscaffold module in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。