代码之家  ›  专栏  ›  技术社区  ›  Flaster

名称错误:未定义名称“”-将函数返回作为输入传递给另一个函数

  •  -1
  • Flaster  · 技术社区  · 6 年前

    我试图找出如何将一个函数的结果传递给同一脚本中的另一个函数。我已经测试了 创建dict 功能和工作。我无法将结果用作 创建HumanusRNamedict 我收到的错误如下 创建HumanusRNamedict(usrdict) 名称错误: 名称 'usrdict' 定义

    import csv
    def CreateDict(filename):
        UsrDict = {}
        with open(filename) as csvfile:
            readCSV = csv.reader(csvfile, delimiter=':')
            for row in readCSV:
                UsrDict[row[0]]=row[1]
            return UsrDict
    
    
    def CreateHumanUsrNameDict(UsrDict):
        HumanUsrDict={}
        for k, v in HumanUsrDict.items():
            if v == len(4):
                HumanUsrDict[k:v]
            print(HumanUsrDict)
    
    if __name__=='__main__':
        CreateDict('Book1.csv')
        CreateHumanUsrNameDict(UsrDict)
    
    1 回复  |  直到 6 年前
        1
  •  0
  •   C Haworth    6 年前

    调用createdict时,需要将返回值赋给变量usrdict。试试这个:

    import csv
    def CreateDict(filename):
        UsrDict = {}
        with open(filename) as csvfile:
            readCSV = csv.reader(csvfile, delimiter=':')
            for row in readCSV:
                UsrDict[row[0]]=row[1]
            return UsrDict
    
    
    def CreateHumanUsrNameDict(UsrDict):
        HumanUsrDict={}
        for k, v in HumanUsrDict.items():
            if v == len(4):
                HumanUsrDict[k:v]
            print(HumanUsrDict)
    
    if __name__=='__main__':
        UsrDict = CreateDict('Book1.csv')
        CreateHumanUsrNameDict(UsrDict)