[PYTHON] Lassen Sie uns eine Mac-App mit Tkinter und py2app erstellen

Ich möchte eine App für Mac erstellen.

Wir haben eine Beratung von einem Shop erhalten, die uns bei der Erstellung von Webseiten usw. hilft, wie die Bestelldetails eines Online-Shops zusammengestellt werden können, der aufgrund des Einflusses von Corona Vorbestellungen hauptsächlich online erhält. Es ist in Ordnung, es in Excel zusammenzustellen, aber ich dachte, ich könnte eine einfache App erstellen, also habe ich beschlossen, es während der Untersuchung zu erstellen.  Tkinter https://python-textbok.readthedocs.io/en/1.0/Introduction_to_GUI_Programming.html Kopieren Sie die Einführung in das GUI-Programm und führen Sie sie aus. Übrigens scheint Tkinter häufig in Python enthalten zu sein. Wenn Sie also auf einem Mac entwickeln, müssen Sie es nicht installieren. Versuchen Sie, das Beispielprogramm für den Taschenrechner am Ende dieser Seite auszuführen. Screen Shot 2020-05-04 at 7.02.38.png Das + und-das hätte erscheinen sollen, erscheint nicht. Ich habe verschiedene Dinge ausprobiert, aber tkinter und py2app, die später beschrieben werden, scheinen sehr anfällig für den Einfluss der Python-Version und der Installationsquelle zu sein. Deshalb habe ich versucht, die Installationsquelle wie pyenv und miniconda zu ändern, aber schließlich habe ich das Betriebssystem auf Catalina aktualisiert Und wahrscheinlich gelang es mit Python 3.8.2 (es tut mir leid, wenn es anders ist!) Und virtualenv, die im Originalprodukt enthalten waren. Es wäre ein guter Artikel, die Fehleraufzeichnung dieses Bereichs aufzuzeichnen, aber ich habe sie nicht richtig aufgezeichnet, sodass ich sie beim nächsten Mal aufzeichnen werde. Screen Shot 2020-05-04 at 7.43.23.png Fall wird beigelegt. Schauen wir uns nun das Beispielprogramm an und ändern die erforderlichen Teile.

Arbeit

Da es sich um ein Programm handelt, das CSV-Dateien liest und aggregierte Ergebnisse ausgibt, habe ich beschlossen, nur die Seite zu erstellen, da die Schnittstelle mit dem Teil, der den Dateinamen, die Verzeichnisaufruftaste und die Ausführungstaste anzeigt, gut ist. Eine einfache Aufgabe, die im Beispiel definierte Klasse in Ihre eigene Klasse umzuschreiben und eine Taste zu drücken. Screen Shot 2020-05-04 at 7.58.26.png Das sieht gut aus. Als nächstes machen wir den Inhalt. Ich habe auf die Qiita-Artikel von hier und hier verwiesen. (Da ich ein Anfänger bin, lassen Sie mich bitte wissen, ob es einen besseren Weg gibt, um zu zitieren.) Für den Filedialog von tkinter habe ich auf [dieses Tutorial] verwiesen (https://pythonbasics.org/tkinter-filedialog/). Die Datenorganisation liest die übliche Pandas. Website CSV, erstellt eine Datenrahmen-Teilmenge des Produktnamens und aggregiert diese.

#Listen Sie nur eindeutige Werte auf
self.itemlist=df["Item's Name"].unique()
#Berechnen Sie die Gesamtzahl aus Teilmengen-Datenrahmen
result={}
for item in self.itemlist:
  tempdf=df.loc[df["Item's Name"]==item]
  sumqty=tempdf["Qty"].sum()
  result[item]=sumqty

Binäre Erstellung für Mac

Erstellen Sie eine Binärdatei für Mac. Ich habe versucht, py2app unter Bezugnahme auf diese Site zu verwenden, aber mein Mac ist abgestürzt, die App konnte nicht geöffnet werden und so weiter. So löschen Sie verschiedene Abhängigkeitsprobleme hier Habe ich die erforderlichen Bibliotheken in der virtualenv-Umgebung mit pip in virtualenv eingefügt (ich glaube, diesmal waren es nur pandas und py2app), und es ist mir schließlich gelungen, die App zu erstellen.

Die Verwendung von py2app selbst ist sehr einfach

py2applet --make-setup test.py
python setup.py py2app

Sie können es mit genau dem tun. Abhängige Bibliotheken scheinen nur zu funktionieren, wenn sie durch virtualenv ordnungsgemäß getrennt sind. Auf diese Weise wurde das erste App-Leben endgültig abgeschlossen. Selbst wenn der Code an einem Tag erstellt werden konnte, dauerte es noch zwei Tage, bis eine App erstellt wurde Es tut mir leid, dass sich der Ton geändert hat. Lass uns nochmal treffen.

Recommended Posts

Lassen Sie uns eine Mac-App mit Tkinter und py2app erstellen
Erstellen Sie mit Py2app und Tkinter eine native GUI-App
Versuchen Sie, ein einfaches Spiel mit Python 3 und iPhone zu erstellen
Lassen Sie uns mit Vue.js und Django-Rest-Framework [Teil 2] ~ Vue setup ~ eine nervenschwächende App erstellen
Lassen Sie uns mit Vue.js und Django-Rest-Framework [Teil 1] ~ Django-Setup ~ eine nervenschwächende App erstellen
Lassen Sie uns eine GUI mit Python erstellen.
Machen wir einen Blockbruch mit wxPython
Lassen Sie uns ein Diagramm mit Python erstellen! !!
Machen wir mit xCAT einen Spacon
Erstellen Sie eine Wetter-App für die Mac-Menüleiste mit Rumpf!
Lassen Sie uns mit Python langsam sprechen
Erstellen Sie ein Webframework mit Python! (1)
Machen wir mit Pylearn 2 eine dreiäugige KI
Erstellen Sie eine Desktop-App mit Python mit Electron
Machen wir einen Twitter-Bot mit Python!
Erstellen Sie ein Webframework mit Python! (2)
Ersetzen wir UWSC durch Python (5) Machen wir einen Roboter
Machen wir eine nervenschwächende App mit Vue.js und Django-Rest-Framework [Teil 3] ~ Implementierung von Nervenschwäche ~
Machen wir eine nervenschwächende Anwendung mit Vue.js und Django-Rest-Framework [Teil 6] ~ Benutzerauthentifizierung 2 ~
Lassen Sie uns mit Vue.js und Django-Rest-Framework [Teil 5] ~ Benutzerauthentifizierung ~ eine nervenschwächende Anwendung erstellen
Lass uns ein Makefile machen und es bauen (super Anfänger)
[Übung] Erstellen Sie eine Watson-App mit Python! # 1 [Sprachdiskriminierung]
[Lass uns mit Python spielen] Ein Haushaltsbuch erstellen
Versuchen Sie, mit Rhinoceros / Grasshopper / GHPython ein sphärisches Gitter zu erstellen
[Super einfach] Machen wir einen LINE BOT mit Python.
Lassen Sie uns eine App erstellen, die ähnliche Bilder mit Python und Flask Part1 durchsuchen kann
Lassen Sie uns eine App erstellen, die ähnliche Bilder mit Python und Flask Part2 durchsuchen kann
Programmieren mit Python und Tkinter
Machen wir einen Discord Bot.
Arbeiten Sie mit tkinter und Maus
Machen wir Othello mit wxPython
Machen Sie eine Lotterie mit Python
Machen Sie ein Feuer mit kdeplot
Lassen Sie uns mit Python einen Web-Socket-Client erstellen. (Zugriffstoken-Authentifizierung)
[Übung] Erstellen Sie eine Watson-App mit Python! # 3 [Klassifizierung der natürlichen Sprache]
Lassen Sie uns ein PRML-Diagramm mit Python, Numpy und matplotlib erstellen.
Erstelle ein 2D-Rollenspiel mit Ren'Py (3) -Items and Tool Shop
Ich habe versucht, die Benutzeroberfläche neben Python und Tkinter dreiäugig zu gestalten
Lassen Sie uns ein Diagramm erstellen, auf das mit IPython geklickt werden kann
Machen Sie ein BLE-Thermometer und ermitteln Sie die Temperatur mit Pythonista3
Machen wir eine Remote-Rumba [Hardware]
Lassen Sie uns eine WEB-Anwendung für das Telefonbuch mit Flasche Teil 1 erstellen
Lassen Sie uns eine Remote-Rumba erstellen [Software]
Lassen Sie uns mit Pylearn2 eine Drei-Wege-KI erstellen - Modell speichern und laden -
Machen Sie einen Sound mit Jupyter Notebook
Machen wir einen Fahrradcomputer mit Raspberry Pi Zero (W, WH)
Machen wir einen Spot Sale Service 2
Erstellen Sie mit Anaconda und PyCharm eine Python-Umgebung auf Ihrem Mac
HTTPS mit Django und Let's Encrypt
Lassen Sie uns eine WEB-Anwendung für das Telefonbuch mit Flasche Teil 2 erstellen
So erstellen Sie eine Überwachungskamera (Überwachungskamera) mit Opencv und Python
Machen wir einen Spot Sale Service 1
Erstellen Sie eine Spinbox, die mit Tkinter in Binär angezeigt werden kann
Machen wir Othellos KI mit Chainer-Teil 1-
Machen Sie let und lassen Sie uns einzeilig programmieren
Einfache GUI App mit Tkinter Text
Machen Sie ein Thermometer mit Raspberry Pi und machen Sie es im Browser Teil 4 sichtbar