2017-10-02 3 views
2

Ich arbeite an einem Python-Projekt von mir und ich wollte es wie eine Anwendung ausführen können. also habe ich ein gui dafür gemacht und ich möchte es für andere nutzen. aber ich benutzte Pakete wie Anfragen und tkinter. Wie würde ich das Programm tragbarer machen? So könnten die Leute einfach auf die .py-Datei klicken und meine GUI würde einfach auftauchen.Wie würde ich Python-Code verteilen?

#!/usr/bin/env python3 
# imports 
import requests 
import time 
from tkinter import * 
import random 

# variables 
test = 'https://api.nicehash.com/api?method=stats.provider.ex&addr=37sCnRwMW7w8V7Y4zyVZD5uCmc9N1kZ2Q8&callback=jQuery111304118770088094035_1506738346881&_=1506738346882' 
url = 'https://api.coinbase.com/v2/prices/USD/spot?' 



# def function to update 
def update_bitcoin_ui(): 

    # update the data sourced form the website 
    req = requests.get(url) 
    data = req.json() 
    bit = (data['data'][0]['amount']) 

    # update the gui to reflect new value 
    thelabel.config(text = "1 BTC = %s USD" % bit) 

    # verify the Ui is updating 
    #thelabel.config(text=str(random.random())) 
    root.after(1000, update_bitcoin_ui) 

# gui workspace 
root = Tk() 
thelabel = Label(root, text = "") 

# set more of the gui and launch the ui 
thelabel.pack() 
root.after(1000, update_bitcoin_ui) 
root.mainloop() 

EDIT: Ich habe gefunden, was ich gesucht habe. Ich war auf der Suche nach etwas zu den Auswirkungen von pyinstaller

+4

Mögliches Duplikat von [Python-App für Mac- und Windows-Benutzer bereitstellen] (https://stackoverflow.com/questions/3379032/deploying-python-app-to-main-und-windows-users) und [Python-Anwendungen bereitstellen ] (https://Stackoverflow.com/q/9421373/62576) –

Antwort

1

Sie könnten dies auf verschiedene Arten tun.

Verwenden Sie etwas wie GitHub. Registrieren Sie sich und erstellen Sie ein Repository. Benutzer können zu Ihrem Repository (https://GitHub.com/username/repo_name) gehen und es über ihre Browser herunterladen. Alternativ können * nix Benutzer git clone https://GitHub.con/username/repo_name tun.

Oder laden Sie Ihr Skript auf PyPi. Sie können dann pip install [package name] unter Windows/* nix tun, und Abhängigkeiten werden automatisch installiert. Lesen Sie, wie Sie dies tun here.

Wenn Sie schauen einfach für eine einfache Möglichkeit, Abhängigkeiten zu installieren:

Sie requirements.txt verwenden könnte, die mit allen Ihren Abhängigkeiten eine Textdatei ist. Der Benutzer kann dann pip install -r requirements.txt tun, und alle Ihre Abhängigkeiten werden installiert.

Oder Sie könnten eine setup.py erstellen. Es hätte Informationen wie Ihre Abhängigkeiten, Autor ect. Der Benutzer kann es dann mit python setup.py install installieren.

Schließlich könnte man einfach einen try/except-Anweisung wie folgt machen:

import pip 
try: 
    import module 
except: 
    pip.main(['install', 'module']) 

Aber warten Sie! Vielleicht hat Ihr Benutzer Python nicht. Niemand möchte all das nur für ein paar Anwendungen installieren. In diesem Fall können Sie Py2Exe auschecken.

+0

Ich denke, OP fragt nicht nach den Mitteln, um den Code zu verteilen, sondern um es portierbar zu machen, so dass Benutzer keine Abhängigkeiten installieren müssen. –

+0

Whoops, ich habe es bearbeitet. –