我正在开发我的 python 项目,我希望它能够像应用程序一样运行。所以我为它做了一个图形用户界面,我想把它分发给其他人使用。但我使用了像请求和 tkinter 这样的包。我怎样才能使程序更便携?这样人们只需单击 .py 文件,我的图形用户界面就会出现。
#!/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()
编辑:我找到了我要找的东西。我一直在寻找 pyinstaller 的效果
最佳答案
您可以通过几种方式做到这一点。
使用像 GitHub 这样的东西.注册然后创建存储库。用户可以转到您的存储库 (https://GitHub.com/username/repo_name
) 并通过浏览器下载它。或者,*nix 用户可以执行 git clone https://GitHub.con/username/repo_name
。
或者,将您的脚本上传到 PyPi。然后,您可以在 Windows/*nix 上执行 pip install [package name]
,依赖项将自动安装。阅读如何操作 here .
如果您只是在寻找一种简单的方法来安装依赖项:
您可以使用 requirements.txt,这是一个包含所有依赖项的文本文件。然后用户可以执行 pip install -r requirements.txt
,您的所有依赖项都将被安装。
或者,您可以创建一个 setup.py
。它会包含诸如您的依赖项、作者等信息。然后用户可以使用 python setup.py install
安装它。
最后,您可以像这样简单地创建一个 try/except 语句:
import pip
try:
import module
except:
pip.main(['install', 'module'])
但是等等!也许您的用户没有 Python。没有人愿意安装所有这些只是为了一些用途。在这种情况下,您可以查看 Py2Exe。
关于python - 我将如何分发 python 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46531170/