我需要从一个单独的文件(我做过)中导入一个类,让它解析一个列表中的元素,并将该解析后的文件存储为字典。
我需要你的帮助。我以为会有回报,但没有,所以我不知道我应该做什么。我认为这是可能的,我只是不知道如何。
到目前为止我的代码是:
class GCCCOMPARE():
def __init__(self, list):
self.GCCLIST = list
self.compare()
self.GCCN = []
self.GCCPLUS = []
def compare(self):
n=0
while n<size(self.GCCLIST):
self.GCCN=self.GCCLIST[n]
self.GCCPLUS=self.GCCLIST[n+1]
GCCFORMAT.__init__(GCCN)
我给出的另一个文件中的代码是:
class GCCFORMAT():
def __init__(self, file):
#print"New GCC Load"
self.pList = [];
self.dList = [];
self.file = file;
self.parse()
def parse(self):
with open(self.file, "r") as icdhelper:
for line in icdhelper:
sArr = line.split()
self.pList.append(PARAM(sArr[0], sArr[4], sArr[2], sArr[3], sArr[6], sArr[7]))
我怀疑这对任何有经验的人来说都很难,但即使如此,也要感谢很多人!
答案 0 :(得分:1)
当您创建GCCFORMAT
类的实例时,它将为您执行解析并将结果存储在实例属性pList
中。只需访问该属性:
gcc_format = GCCFORMAT(GCCN)
results = gcc_format.pList
答案 1 :(得分:0)
这是一个可能的解决方法:
GCCCOMPARE.py
import GCCFORMAT
class GCCCOMPARE():
def __init__(self, list):
self.GCCLIST = list
self.GCCDICT = {}
self.compare()
def compare(self):
for i,element in enumerate(self.GCCLIST):
data = GCCFORMAT.GCCFORMAT(element)
self.GCCDICT.update({i:data.pList})
GCCFORMAT.py
class GCCFORMAT():
def __init__(self, file):
#print"New GCC Load"
self.pList = [];
self.dList = [];
self.file = file;
self.parse()
def parse(self):
with open(self.file, "r") as icdhelper:
for line in icdhelper:
sArr = line.split()
self.pList.append([sArr[0], sArr[4], sArr[2], sArr[3], sArr[6], sArr[7]])
temp0.txt
0 1 2 3 4 5 6 7 8 9
temp1.txt
0 1 2 3 4 5 6 7 8 9
然后您可以按如下方式使用上述类:
import GCCCOMPARE
somevariable = GCCCOMPARE.GCCCOMPARE(["temp0.txt","temp1.txt"])
desired_dictonary = somevariable.GCCDICT
输出
desired_dictionary = {0: [['0', '4', '2', '3', '6', '7']], 1: [['0', '4', '2', '3', '6', '7']]}