Hinweis: Python Skeleton Nya

Ungefähr Originalmaterial

Projektskelett in meinem Fall

Vergiss es, also wie man ein eigenes Python-Projekt erstellt

Voraussetzungen

Das Folgende sind Voraussetzungen für die Installation

1. Aufbau der Projektumgebung

Erstellen Sie bei Bedarf eine Python-Umgebung

# Installieren Sie Python bei Bedarf
$ pythonz install py_version

# Aufbau einer virtuellen Umgebung
$ cd path_to_virtualenv_dir
$ virtualenv -p `pythonz locate py_version` virtualenv_dir_name

# Bestätigung der Pythonz-Installationsdetails
$ pythonz list
 virtualenv activate
$ . path_to_virtualenv_dir/virtualenv_dir_name/bin/activate
 virtualenv deactivate
$ deactivate

2. Erstellen Sie ein Verzeichnis


# Python-Projektspeicherverzeichnis
$ mkdir projects
# Projektverzeichnis erstellen
$ mkdir prj_name ; cd prj_name
# Initialisieren
$ mkdir bin pkg_name test docs
touch pkg_name/__init__.py tests/__init__.py
  1. setup.py

Erstellen Sie die folgende Datei in prj_name / setup.py

try:
    from setuptools import setup
except ImportError:
    from distutils.core import setup

config = {
    'description': 'My Project',
    'author': 'My Name',
    'url': 'URL to get it at.',
    'download_url': 'Where to download it.',
    'author_email': 'My email.',
    'version': '0.1',
    'install_requires': ['nose'],
    'packages': ['NAME'],
    'scripts': [],
    'name': 'projectname'
}

setup(**config)

Richten Sie abhängige Bibliotheken unter install_requires ein

$ python setup.py develop
# Bestätigung
$ pip list

4. Bereiten Sie eine Testumgebung vor

Fügen Sie Tests zu prj_name / tests / pkg_name_tests.py hinzu

from nose.tools import *
import pkg_name

def setup():
    print "SETUP!"

def teardown():
    print "TEAR DOWN!"

def test_basic():
    print "I RAN!"

Funktionsprüfung

$ nosetest

5. Verzeichnisstruktur

Die Verzeichnisstruktur ist wie folgt

prj_name/
     pkg_name/
         __init__.py
     bin/
     docs/
     setup.py
     tests/
         pkg_name_tests.py
         __init__.py

Recommended Posts

Hinweis: Python Skeleton Nya
Hinweis: Python
Python-Notiz
Python lernen note_002
Hinweis: Python-Dekorator
[Python] Lernnotiz 1
Python-Skript-Skelett
Python lernen note_004
Python lernen note_003
[Hinweis] openCV + Python
Python-Anfängernotiz
[Anmerkung] zukünftige Aussage ~ Python ~
[Hinweis] Datei lesen ~ Python ~
Beachten Sie, dass Python ein Daemon ist
Python Tkinter Primer Hinweis
Python-Eingabehinweis in AtCoder
[Hinweis] Betreiben Sie MongoDB mit Python
Planare Skelettanalyse mit Python
[WIP] Fluent Python-Studiennotizen
Notizen für 3 Monate, seit ich Python gestartet habe
[AtCoder] ABC165C Persönliche Notiz [Python]
Beachten Sie, dass es Python 3 unterstützt
Ein Hinweis zu [Python] __debug__
Memo
Python Hinweis: Über den Vergleich mit is
[Hinweis] Project Euler in Python (Problem 1-22)
Python: Ein Hinweis zu Klasse 1 "Abstract"
(Hinweis) Seien Sie vorsichtig mit Python Argparse
Memo
[Hinweis] Hallo Weltausgabe mit Python
Memo
boto3 (AWS SDK für Python) Hinweis
Fremdschlüssel in SQLite von Python [Hinweis]
Planare Skelettanalyse in Python (2) Hotfix
Python Hinweis: Holen Sie sich den aktuellen Monat
Ein Hinweis zu Mock (Python-Mock-Bibliothek)
Eine Notiz, in der ein Python-Anfänger stecken blieb
Python Hinweis: Wenn easy_install nicht verwendet werden kann
[Hinweis] Mit Python Daten von PostgreSQL abrufen
Hinweise beim Erstellen einer Umgebung mit Python
Hinweis für Pyjulia, die Julia aus Python anruft
"Python Machine Learning Programming" - Zusammenfassung (Jupyter)
Beispiel einer dreidimensionalen Skelettanalyse von Python
[Persönlicher Hinweis] Scraping von Webseiten in Python3
Versuch, SQLite3 mit Python zu handhaben [Hinweis]
Beachten Sie, dass Python-Dekoratoren Wraps haben sollten
(Hinweis) Massenaktualisierung von in Python installierten Paketen
Python Hinweis: Die geheime Rolle von Kamma
[Hinweis] Führen Sie Python-Code aus Excel aus (xlwings)