2015-10-04 53 views
0

对于我的Python项目,我将源代码保存在目录src中。因此,对于我的项目的setup.py脚本:Setup.py woes:警告:''不是有效的软件包名称

from setuptools import setup 

setup(name='pyIAST', 
    ... 
    package_dir={'':'src'}, 
    packages=['']) 

,使它看起来为src/IAST.py,在我的代码所在。例如有一个函数plot_isotherms()IAST.py脚本,以便用户可以在安装后,把它叫做:

import IAST 
IAST.plot_isotherms() 

一切都很正常,但有一个恼人的警告,当我python setup.py install或使用pip install pyIAST一封来自PyPI:

WARNING: '' not a valid package name; please use only.-separated package names in setup.py 

我该如何让它消失?

我的项目是here。我也有点困惑,为什么我将我的软件包命名为pyIAST,但用户仍然输入import IAST来导入我的软件包。以清除警告

+0

你尝试给它一个有效的软件包名称:
import setuptools; print "setup version: ", setuptools.__version__
可与更新呢? –

+0

@ IgnacioVazquez-Abrams setuptools.setup来自distutils.core.setup。 distutils文档显示''''是一个有效的软件包。我猜setuptools扩展打破了这一点。 https://docs.python.org/2/distutils/examples.html#pure-python-distribution-by-package – thorr18

回答

1

一种方法是你的第一行更改为:
from setuptools import setup, find_packages
,然后你的包线更改为:
packages=find_packages(),
的安装程序安装将不再生成警告。

您可以运行下面的两个命令来查看您的等温线方法现已可用:
import pyiast#(< ==通知,这不是IAST)
dir(pyiast)

['BETIsotherm', 'InterpolatorIsotherm', 'LangmuirIsotherm', 'ModelIsotherm', 'QuadraticIsotherm', 'SipsIsotherm', '_MODELS', '_MODEL_PARAMS', '_VERSION', '__author__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', 'iast', 'np', 'plot_isotherm', 'print_selectivity', 'reverse_iast', 'scipy']

它可以使用pyiast.plot_isotherm()

您可能需要更新您的setuptools。你可以查看你所拥有的版本: sudo pip install --upgrade setuptools

相关问题