我在名为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.py
与dbconn.py
和main.py
位于同一目录中。 Dbconn()
没有任何问题,但我不明白为什么Parser()
无法正常工作......
答案 0 :(得分:3)
Parser是现有的python module。使用不同的文件名(不是parser.py)或在stdlibs之前在sys.path中插入路径。
import sys
sys.path.insert(0,'parser/directory')
from parser import *