在循环中将另一个方法返回的值应用到另一个方法中

在一个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]

第一个函数return返回值,然后在第二个函数中调用,用四个变量接收返回值,示例如下:

def t():
  return 1,2,3,4
def p():
  a,b,c,d = t()
  print(d)
p()
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)
        result = bso.readXSB(item, t_list)
        # 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, company, rq, t_list = bso.readYE(item)
        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]

是这样吗