Python错误AttributeError:模块“参数”没有属性“ main”

时间:2019-12-30 14:21:17

标签: python import

我是python的新手,当我使用以下命令从cmd调用test.py时遇到问题: python C:/xampp/python/test.py测试“单词”“单词”

我收到以下错误:

Traceback (most recent call last):
  File "C:/xampp/python/test.py", line 2, in <module>
    import arguments
  File "C:\xampp\python\arguments.py", line 2, in <module>
    import errors
  File "C:\xampp\python\errors.py", line 32, in <module>
    if arguments.main("errors",min):
AttributeError: module 'arguments' has no attribute 'main'

现在我的python代码如下:

test.py:

import sys
import arguments

#Minimum amount of arguments to be passed (left to right)
min = 3

def main(v1,v2):
    return v1 + " | " + v2

print(main(sys.argv[2],sys.argv[3]))

arguments.py

import sys
import errors

def main(n,min):
    print("here from: " + n)
    if sys.argv[1] == n:
        if len(sys.argv) > min:
            return True
        else:
            print(errors.main("B001 ARGUMENT_ASYMMETRY",0)) #error message
            return False

errors.py

import sys
import arguments

#Minimum amount of arguments to be passed (left to right)
min = 3

def main(e,c):
    ec = None;

    try:
        if int(c) == 0:
            ec = "Fatal backend error"
        if int(c) == 1:
            ec = "Backend error"
        if int(c) == 2:
            ec = "Backend warning"

        return  ec + ": " + e
    except:
        try:
            x = int(c)
            return "Fatal backend error: B003 ARGUMENT_MISMATCH at ERRORS"
        except:
            return "Fatal backend error: B002 INVALID_PARSING at ERRORS"

if arguments.main("errors",min):
    print(main(sys.argv[2],sys.argv[3]));

现在我不明白的是,这是说模块“参数”没有main属性。 由于这里的每个python文件都有一个def main()

我还进行了一些调试,在该调试中,我从test.py中删除了对arguments.py的所有调用,这就是结果。 此时,除了:

之外,不会从test.py调用arguments.py。
import arguments

,删除后错误停止:

import arguments

来自test.py

所以我不明白为什么它会给我一个错误。我明确定义了main()。而且我不会对arguments.py进行任何可能导致错误的奇怪调用。显然在导入时出了点问题,但是我不知道那可能是什么。

任何人都可以告诉我这里出了什么问题,并帮助我解决此错误。

PS:我不使用任何来自第三方的库。我不使用画中画

谢谢!

0 个答案:

没有答案