0

Parser我在一个名为的文件中定义了一个类parser.py,它解析一个测试结果......

import sys
import re

class Parser:

    def __init__(self):
        pass

    def udp_parse(self, filename=""):
       # ... some code over here

现在,在main.py. 我有:

from dbconn import *
from parser import *
import os
import subprocess

def main() 
    dbconn = Dbconn()
    parse = Parser()
    # more code here ...

if __name__ == '__main__':
    main()

我得到:

Traceback (most recent call last):
  File "iperf.py", line 108, in <module>
    main()
  File "iperf.py", line 49, in main
    parse = Parser()
NameError: global name 'Parser' is not defined

parser.pydbconn.py与和位于同一目录中main.pyDbconn()工作没有任何问题,但我不明白为什么Parser()也不能工作......

4

1 回答 1

4

Parser 是一个现有的python 模块。使用不同的文件名(不是 parser.py)或在 sys.path 中的 stdlibs 之前插入您的路径。

import sys
sys.path.insert(0,'parser/directory')
from parser import *
于 2013-08-12T23:19:23.347 回答