นี่คือเทมเพลตแพ็คเกจที่เราใช้ภายในเมื่อสร้างเครื่องมือที่ใช้ Python CLI ใหม่ มันมีฟังก์ชั่นพื้นฐานและเวิร์กโฟลว์ทั้งหมดที่จำเป็นในการสร้างสร้างและเผยแพร่แพ็คเกจใหม่ให้กับ PYPI
แพ็คเกจนี้มียูทิลิตี้บรรทัดคำสั่งสำหรับการประมวลผลและการจัดการงานต่าง ๆ โดยใช้ชุดของอาร์กิวเมนต์และการกำหนดค่าที่กำหนดไว้ล่วงหน้า โครงการมีวัตถุประสงค์เพื่อใช้เป็นพื้นฐานสำหรับการพัฒนาแอปพลิเคชันบรรทัดคำสั่งที่คล้ายกัน
มันมีคุณสมบัติเช่นการแยกการโต้เถียงการจัดการการกำหนดค่าและโครงสร้างแบบแยกส่วนเพื่ออำนวยความสะดวกในการพัฒนารหัสที่ปรับขนาดและบำรุงรักษาได้
นอกจากนี้เรายังมีเทมเพลตอื่น ๆ อีก 2 รายการที่เราใช้
argparseในการติดตั้งแพ็คเกจ CLI ให้โคลนที่เก็บและนำทางไปยังไดเรกทอรีโครงการ:
git clone https://github.com/DevelopersToolbox/template-package-cli.git
cd template-package-cliขอแนะนำให้ใช้สภาพแวดล้อมเสมือนจริงเพื่อจัดการการพึ่งพา คุณสามารถสร้างและเปิดใช้งานสภาพแวดล้อมเสมือนจริงโดยใช้คำสั่งต่อไปนี้:
python -m venv venv
source venv/bin/activate # On Windows, use `venvScriptsactivate`ติดตั้งการพึ่งพาที่ต้องการ:
pip install -r requirements.txt ในการเรียกใช้แพ็คเกจ CLI ให้ดำเนินการฟังก์ชั่น main จากสคริปต์หลัก:
python -m wolfsoftware.template_package_cli.main --required < value >แอปพลิเคชันรองรับอาร์กิวเมนต์บรรทัดคำสั่งหลายอย่าง:
-h, --help : แสดงข้อความช่วยเหลือและออก-d, --debug : เปิดใช้งานโหมดการดีบักสำหรับเอาต์พุต verbose-v, --verbose : เปิดใช้งาน verbose output เพื่อแสดงผลลัพธ์การสแกนเมื่อเข้ามา-V, --version : แสดงหมายเลขเวอร์ชันและทางออกของโปรแกรม-i, --optional-integer : อาร์กิวเมนต์จำนวนเต็มเสริม (ค่าเริ่มต้น: 2)-s, --optional-string : อาร์กิวเมนต์สตริงเสริม (ค่าเริ่มต้น: "Me")-r, --required : อาร์กิวเมนต์สตริงที่ต้องการตัวอย่างการใช้งาน:
python -m wolfsoftware.template_package_cli.main -r " required_value " -i 10 -s " optional_string " โครงการจัดขึ้นดังนี้:
template-package-cli/
├── wolfsoftware/
│ └── template_package_cli/
│ ├── __init__.py
│ ├── cli.py
│ ├── config.py
│ ├── exceptions.py
│ ├── globals.py
│ └── main.py
├── README.md
├── setup.py
└── requirements.txtwolfsoftware/template_package_cli : มีโมดูลหลักของแอปพลิเคชันcli.py : จัดการอาร์กิวเมนต์บรรทัดคำสั่งและการไหลของโปรแกรมหลักconfig.py : จัดการการสร้างการกำหนดค่าจากอาร์กิวเมนต์บรรทัดคำสั่งexceptions.py : จัดการข้อยกเว้นที่กำหนดเองglobals.py : กำหนดค่าคงที่ทั่วโลกที่ใช้ในการใช้งานmain.py : สคริปต์หลักที่จัดทำข้อโต้แย้งการแยกวิเคราะห์และการดำเนินการโปรแกรมrequirements.txt : แสดงรายการการพึ่งพาที่จำเป็นสำหรับโครงการREADME.md : ไฟล์ที่คุณกำลังอ่านอยู่