2012-04-14 88 views
1

我试图导入一个Python模块,它包含以下几行:Python模块导入失败的原因不明

#setup.py 
def isnumber(pause): 
    try: 
     float(pause) 
     return True 
    except ValueError: 
     return False 

我想这样称呼它:

#program.py 
import setup 

,但我出现以下错误:在setup.py

Traceback (most recent call last): 
    File "C:\Users\[email protected]\ralph\programas\python\scraper\release\program.py", line 4, in <module> 
    import setup 
    File "C:\Users\[email protected]\ralph\programas\python\lib\setup.py", line 55, in <module> 
    download_url="http://www.crummy.com/software/BeautifulSoup/download/" 
    File "C:\Users\[email protected]\ralph\programas\python\lib\distutils\core.py", line 140, in setup 
    raise SystemExit, gen_usage(dist.script_name) + "\nerror: %s" % msg 
SystemExit: usage: program.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...] 
    or: program.py --help [cmd1 cmd2 ...] 
    or: program.py --help-commands 
    or: program.py cmd --help 

error: no commands supplied 

线55对应于return True在上面的代码。

没有isnumber函数,导入按预期工作。

任何人都可以看到我做错了什么?

+0

setup.py已经在python发行版中定义了,所以更改模块名称可以解决问题。我不明白为什么删除函数虽然有所作为。 – ralph346526 2012-04-14 23:48:31

回答

2

您已决定调用您的模块“setup.py”。这是一个非常危险的名字,因为它通常用于Python模块的构建/安装脚本,非常类似于已有的脚本。选择一个不同的名字。

+0

谢谢,我刚刚发现。奇怪的是,删除这个小函数使得导入工作。 – ralph346526 2012-04-14 23:50:13