Erstellen Sie schnell Ihr eigenes Modul mit setuptools (Python)

Überblick

Möglicherweise entwickeln Sie selbst etwas und modularisieren Klassen und Funktionen.

Durch Schreiben und Erstellen von setup.py mit setuptools

test.py


import mylib

Sie können so etwas tun, aber wo Sie modularisieren möchten Ich möchte die minimal notwendigen Punkte als Memorandum zusammenfassen. Wenn Sie dies vorbereiten, können Sie es sehr schnell modularisieren.

Ich werde nur das erforderliche Minimum schreiben, daher sind die Details Offizielles Dokument. Bitte beziehen Sie sich auf.

Kommentar

Die Erklärung lautet wie folgt.

Was vorzubereiten?

Das ist alles was du brauchst.

Dieses Mal haben wir unter der Annahme, dass wir ein Modul namens "mylib" erstellen, Folgendes vorbereitet.

tree .
setup.py
mylib
|-- __init__.py
|-- mylib.py

Schreiben Sie die Funktion, die Sie erstellen möchten, in eine Bibliothek.

Dann schrieb ich die entsprechende Funktion in mylib.py, die den Inhalt der Bibliothek darstellt, wie folgt.

mylib.py



class Test():
    def __init__(self):
        pass

    def pt():
        print("from class Test")


def test():
    print('hello world')

Bereiten Sie "__init __. Py" vor.

――Welche Datei soll importiert werden?

Schreiben Sie einfach ein paar Zeilen darüber.

__init__.py


from .mylib import (
    test,
    Test,
)

__version__ = '0.0.0'

in diesem Fall, Aus der Datei mylib.py mit der Funktion test Ich schreibe gerade eine Klasse namens "Test" in dieser Bibliothek.

Schreiben Sie ein wenig setup.py.

setup.py


from setuptools import setup, Extension,find_packages

setup(
    name = 'mylib',
    packages=find_packages(where='mylib'),
    package_dir={'': 'mylib'},
)

Das ist in Ordnung.

Führen Sie setup.py aus.

Die Python-Bibliothek ist eine gemeinsam genutzte Objektdatei (also Datei) Es wird im Python-Umgebungsordner gespeichert. Der Speicherort ist https://qiita.com/kenmaro/items/d589d32115154dcd26b2 Dieser Artikel bitte beziehen Sie sich auf.

Wenn Sie es in diesen Ordner legen, egal wo Sie "Python" ausführen import mylib

Kann sein. Wenn du das machen willst

python setup.py install

Bitte ausführen.

Wenn Sie einen Ordner mit solchen Dateien in der Hierarchie erstellen möchten, in der sich setup.py befindet, anstatt in diesem Ordner zu speichern (Derzeit können Sie meine Bibliothek nur in dieser Hierarchie importieren.) Ist

python setup.py build_ext --inplace

Kann sein.

Optional (wenn Sie sich auf andere Bibliotheken verlassen)

Beispielsweise ruft Ihre eigene Bibliothek intern "tensorflow" auf. Ich denke, die meiste Zeit benutze ich andere Bibliotheken. Zu diesem Zeitpunkt ist die folgende Arbeit "plus" erforderlich.

--Erstellen Sie require.txt.

requirements.txt In Anforderungen.txt

requirements.txt


tensorflow==2.2

Und so weiter, schreiben Sie die notwendigen Bibliotheken.

Zu setup.py hinzufügen

setup.py


from setuptools import setup, Extension,find_packages

def _requires_from_file(filename):
    return open(filename).read().splitlines()


setup(
    name = 'mylib',
    packages=find_packages(where='mylib'),
    package_dir={'': 'mylib'},
    install_requires=_requires_from_file('requirements.txt'),
)

Schreiben Sie so. Versuchen Sie danach "python setup.py install" usw. wie zuvor.

Zusammenfassung

Diesmal mit den minimal möglichen Schritten Implementieren Sie Ihr eigenes Python-Modul mit setuptools Ich versuchte es zu erklären.

Diesmal hier.

Ende.

Recommended Posts

Erstellen Sie schnell Ihr eigenes Modul mit setuptools (Python)
[Python] Erstelle deinen eigenen LINE-Bot
So importieren Sie Ihr eigenes Modul mit jupyter
Veröffentlichen Sie Ihre eigene Python-Bibliothek auf Homebrew
Erstelle deinen eigenen Musik-Player mit Bottle0.13 + jPlayer2.5!
Ablauf beim Erstellen eines eigenen Pakets mit setup.py mit Python
Memo zum Erstellen einer eigenen Box mit Peppers Python
Rufen wir Ihre eigene C ++ - Bibliothek mit Python auf (Einstellungen)
Rufen Sie Ihr eigenes Python-Modul aus dem ROS-Paket auf
Erstelle Puyopuyo AI mit Python
Machen Sie eine Lotterie mit Python
Bis Sie Ihre eigene Python-Bibliothek mit pip installieren können
Versuchen Sie, Ihre eigenen Objekte mit Prioritätswarteschlangen in Python zu sortieren
Führen Sie die Intelligenz Ihrer eigenen Python-Bibliothek mit VScode aus.
Reinforcement Learning 23 Erstellen und verwenden Sie Ihr eigenes Modul mit Colaboratory
Erstelle einen LINE-Bot mit Python + Heroku
Machen Sie Ihr eigenes Handbuch. [Linux] [Mann]
Machen Sie Apache Log CSV mit Python
Lassen Sie uns eine GUI mit Python erstellen.
Löse dein eigenes Labyrinth mit Q-Lernen
Erstellen Sie ein Empfehlungssystem mit Python
Lassen Sie uns ein Diagramm mit Python erstellen! !!
Trainiere UGATIT mit deinem eigenen Datensatz
Löse dein eigenes Labyrinth mit DQN
Erstellen Sie Ihre eigene VPC mit einem einzigen öffentlichen Subnetz Nur mit boto
So erstellen Sie Ihre eigene Domain-Site mit Heroku (kostenloser Plan)
Machen Sie die Python-Konsole mit UNKO bedeckt
Ihr eigener Twitter-Client mit Django
Lassen Sie uns mit Python ein Shiritori-Spiel machen
Erstellen Sie mit python3 eine Wortwolke aus Ihrem Tweet
Plötzlich mit Python PyInstaller Kein Modul namens pyinstaller
[LLDB] Erstellen Sie Ihren eigenen Befehl mit Python
Verwenden Sie einfach Ihre eigenen Funktionen in Python
Erstellen Sie mit Twisted Ihren eigenen DNS-Server
[Python] Packen und verteilen Sie Ihre eigenen Module
Erstellen Sie ein Beziehungsdiagramm von Python-Modulen
Erstellen Sie mit SQLAlchemy Ihren eigenen zusammengesetzten Wert
Fraktal zum Erstellen und Spielen mit Python
Erstellen Sie mit Python selbst die bekannte 3-Tage-Darstellung des Röntgenflusses von NOAA / GOES
Erstellen Sie mit Python + OpenCV Ihre eigene virtuelle Kamera und wenden Sie Originaleffekte an
HTML-Dokument Python-Programme mit Sphinx
[Python] Registrieren Sie Ihre eigene Bibliothek in PyPI
Lassen Sie uns mit Python langsam sprechen
Bis Sie Ihre eigene Python-Bibliothek installieren
Erleichtern Sie die Einreichung von Pypys mit atcoder-cli (Python)
Lassen Sie uns ein Bilderkennungsmodell mit Ihren eigenen Daten erstellen und spielen!
Integration mit setuptools / python setup.py test / pytest-runder
[Python] Lassen Sie uns matplotlib mit Japanisch kompatibel machen
[Python] Erstellen Sie schnell eine API mit Flask
Erstellen Sie ein Webframework mit Python! (1)
Erstellen Sie eine Desktop-App mit Python mit Electron
Machen wir einen Twitter-Bot mit Python!
Erstellen Sie ein Webframework mit Python! (2)
Holen Sie sich Ihre eigene IP-Adresse in Python
Der Weg zur Aktualisierung von Splunkbase mit Ihrer eigenen Splunk-App, die mit Python v2 / v3 kompatibel ist
Fehler beim Installieren eines Moduls mit Python pip
Pyinstaller verwandelt Python-Skripte in EXE-Dateien, die unter Windows ausgeführt werden können
[Python] Implementieren Sie Ihre eigene listenähnliche Klasse mit collection.UserList