Python:一个包含单文件源的Python Egg简单示例?

13 投票
2 回答
10890 浏览
提问于 2025-04-15 22:49

我不太确定怎么制作一个非常简单的单文件源模块。网上有没有可以作为Python .egg文件构建的示例模块呢?

setuptools页面来看,这似乎很简单,你只需要一个setup.py文件和至少一个其他的.py文件,然后我可以顺利地构建一个.egg文件,甚至可以用easy_install来安装它,但我似乎无法在Python中import这个文件。(注意:我使用的是2.6.4版本)


这是我的示例目录:

sconsconfig
   setup.py
   sconsconfig.py

setup.py:

from setuptools import setup, find_packages
setup(name='sconsconfig',
      version='0.1',
      packages = find_packages(),
      )

sconsconfig.py:

def blarg(x):
  return x+1

如果我运行setup.py bdist_egg,它会创建一个egg文件,但如果我查看这个文件,里面没有.py源文件……

2 个回答

0

关于 distutils,可以参考这个链接:https://docs.python.org/3/distutils/introduction.html#a-simple-example :

from distutils.core import setup
setup(name='foo',
      version='1.0',
      py_modules=['foo'],
      )

那么你只需要一个文件:

foo.py

在 Ubuntu 14.04 系统上:

sudo python setup.py

把它放在:

/usr/local/lib/python2.7/dist-packages/foo.py

不需要任何文件夹。

7

你可以用 py_modules 这个参数来列出单个文件的模块,而不是用 packages 这个参数。

详细信息可以查看这个链接:https://docs.python.org/3/distutils/setupscript.html#listing-individual-modules

撰写回答