使用tkinter释放python包以获取pip

问题描述 投票:0回答:1

我在Python中使用Tkinter构建了一个小测验,我希望释放游戏供所有人玩,这样人们就可以只使用pip install并玩游戏。

我已经通过文档发布了一个PyPi包,我发布了一个,它已成功安装。但是,我无法从命令行启动应用程序,也无法查找二进制文件。我不知道我哪里错了。请帮帮我。

我的setup.py文件看起来像这样

from setuptools import setup
from codecs import open
from os import path

here = path.abspath(path.dirname(__file__))

with open(path.join(here, 'README.rst')) as f:
    long_description = f.read()

setup(
    name='py-quiz',
    version='0.1.1',
    description='Python based Quiz game.',
    long_description=long_description,
    author='Abhijit Nathwani',
    author_email='[email protected]',
    LICENSE='MIT',
    url='https://github.com/abhijitnathwani/PyQuiz',
    keywords='pyquiz tkinter'

)

打包它,我用

python setup.py sdist upload

该包已成功添加到PyPi包中,我可以使用以下命令安装它:

pip install py-quiz

安装的输出:

Collecting py-quiz
  Downloading py-quiz-0.1.1.tar.gz
Installing collected packages: py-quiz
  Running setup.py install for py-quiz ... done
Successfully installed py-quiz-0.1.1

但是当我这样做的时候

user@somecomputer:~/PyQuiz$ py-quiz
py-quiz: command not found

如何从命令行启动游戏?请帮帮我。

应用程序代码维护here

python tkinter packaging pypi
1个回答
1
投票

我最后通过进行以下更改解决了上述问题。必须在目录中创建一个包,文件夹结构应如下所示:

<Directory>
|-setup.py
|-dist
|-LICENCSE
|-readme
|-<package-name>
 |-__init__.py
 |-__main__.py
 |-other files 

setup.py,应该有以下变化

entry_points={ 'console_scripts':['<command_name> = <package_name>.__main__:<function to be called>']

就我而言,它如下:

entry_points={ 'console_scripts':['py-quiz = py_quiz.__main__:main']

重点是在项目目录中创建一个包。这应该解决重大问题。

© www.soinside.com 2019 - 2024. All rights reserved.