在一个for循环中,有两个方法readYE(参数)和readXSB(参数1,参数2),readYE返回4个值,分别为result, company, rq ,t_list,怎么样将 第一个方法中返回的t_list 能够在第二个方法中使用。
附代码:
class MyThread(QThread):
sig = pyqtSignal(str)
def __init__(self, params,role,parent=None):
super(MyThread, self).__init__(parent)
self.params = params
self.xlRole = role
def run(self):
result_dic = {}
errlist = []
# 规则字典
roles_dic = rolesFunc()
t_gz = self.xlRole
roleNmae = roles_dic[t_gz]
filelist = walkFile(self.params,roleNmae)
c = len(filelist)
for x,item in enumerate(filelist):
msg = '正在处理{0}/{1}, {2}'.format(str(x+1),str(c),item)
self.sig.emit(msg)
if roleNmae is not None:
if '包含' in roleNmae.keys():
gznm =roleNmae['包含']
#print('gznm')
#print(gznm)
fname = os.path.basename(item)
#print('fname' + fname)
fname = fname.split(gznm[0])[0]
#print('fname1' + fname)
else:
fname = os.path.basename(item)
#print('item:'+item)
if '余额表' in item or '科目余额表' in item:
if t_gz == 'A':
result, company, rq = mnhz.readYE(item)
if t_gz == 'B':
result, company, rq = jfj.readYE(item)
#print(company, rq)
if t_gz == 'C':
result, company, rq ,t_list= bso.readYE(item)
#print(result, company, rq)
#print(t_list)
if fname in result_dic.keys():
result_dic[fname][0] = result
result_dic[fname][2] = company
result_dic[fname][3] = rq
#print(result,company,rq)
else:
result_dic[fname] = [result, None, company, rq]
else:
if t_gz == 'A':
result = mnhz.readXSB(item)
if t_gz == 'B':
result = jfj.readXSB(item)
if t_gz == 'C':
result = bso.readXSB(item,t_list)
if fname in result_dic.keys():
result_dic[fname][1] = result
else:
result_dic[fname] = [None, result, None, None]