Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用tkinter for pip发布python包_Python_Tkinter_Packaging_Pypi - Fatal编程技术网

使用tkinter for pip发布python包

使用tkinter for pip发布python包,python,tkinter,packaging,pypi,Python,Tkinter,Packaging,Pypi,我已经用Python中的Tkinter构建了一个小测试,我希望发布这个游戏,让所有人都可以玩,这样人们就可以安装并玩这个游戏了 我已经通过文档发布了一个PyPi包,我发布了一个,它得到了成功安装。但是,我无法从命令行启动应用程序,也无法查找二进制文件。我不知道我哪里做错了。请帮帮我 我的setup.py文件如下所示 from setuptools import setup from codecs import open from os import path here = path.abspa

我已经用Python中的Tkinter构建了一个小测试,我希望发布这个游戏,让所有人都可以玩,这样人们就可以安装并玩这个游戏了

我已经通过文档发布了一个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='abhijit.nathwani@gmail.com',
    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
如何从命令行启动游戏?请帮帮我


应用程序代码得到了维护。

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

<Directory>
|-setup.py
|-dist
|-LICENCSE
|-readme
|-<package-name>
 |-__init__.py
 |-__main__.py
 |-other files 
在setup.py中,应执行以下更改:

入境点={ “控制台脚本”:['=。\uuuuuu主脚本”:

就我而言,情况如下:

<Directory>
|-setup.py
|-dist
|-LICENCSE
|-readme
|-<package-name>
 |-__init__.py
 |-__main__.py
 |-other files 
入境点={ ‘控制台脚本’:['py-quick=py-quick.\uuuuu-main\uuuuu:main']


要点是在项目目录中创建一个包。这应该可以解决主要问题。

Abhijit,在创建源代码发行版$python setup.py register之前,您没有注册安装文件,有关详细信息,我这样做了。但是得到的响应是“服务器响应410:不再需要或支持项目预注册,因此继续直接上载文件。`。现在不推荐注册。我们只需直接上载即可。@anupad安装程序中的入口点:entry\u points={'console\u scripts':['my\u project=my\u project.\uu\u\u:main']},我按照你的指示进行了尝试,但仍然没有帮到我。将我的最终脚本重命名为main.py,并添加了一个要调用的主函数。仍然不好。你能详细说明一下吗?@AnupI看到你很好地解决了问题。希望未来的搜索者能在下面添加你的答案-