为了账号安全,请及时绑定邮箱和手机立即绑定

不从主返回的值

不从主返回的值

慕斯709654 2022-09-13 15:16:10
我有以下代码,我希望将输入文件和输出文件拉入到其他函数中,但是,这些代码似乎没有返回。仍然很新,所以如果这很简单,请道歉。# PYTHON 3.76 ONLY# Version 0.0.1import xml.etree.cElementTree as etimport pandas as pdimport sys, getoptdef main(argv):    inputfile = ''    outputfile = ''    try:        opts, args = getopt.getopt(argv,"hi:o:",["ifile=","ofile="])    except getopt.GetoptError:        print ('test.py -i <inputfile> -o <outputfile>')        sys.exit(2)    for opt, arg in opts:        if opt == '-h':            print ('test.py -i <inputfile> -o <outputfile>')            sys.exit()        elif opt in ("-i", "--ifile"):            inputfile = arg        elif opt in ("-o", "--ofile"):            outputfile = arg    print ('Input file is "', inputfile)    print ('Output file is "', outputfile)    return inputfile, outputfileif __name__ == "__main__":    main(sys.argv[1:])# convert XML to dataframedef xml2df(xml_data):    tree = et.parse(xml_data)    print (tree.getroot())    root = tree.getroot()    print ("tag=%s, attrib=%s" % (root.tag, root.attrib))    #iterate over each value for room and each user and add to rows    rows = []    for child in root.iter('rooms'):        roomId, roomTitle = 'id', 'ttl'    for it in child:        if it.tag == 'room':            roomId = it.findtext('roomID')            roomTitle = it.findtext('roomTitle')            roomStatus = it.findtext('status')            isAnonymous = it.findtext('isAnonymous')返回错误回溯(最近调用最后):文件“parse_pChatDump.py”,第 63 行,在 df = xml2df(输入文件) 名称错误:未定义名称“输入文件”
查看完整描述

1 回答

?
jeck猫

TA贡献1909条经验 获得超7个赞

您在方法中创建和返回它,但是您不将它们存储在脚本开始的变量中,因此以后无法访问它们,请执行:inputfileoutputfilemain


def main(argv):

    inputfile = ''

    outputfile = ''

    # ...

    return inputfile, outputfile



def xml2df(xml_data):

    # ...

    return df



if __name__ == "__main__":

    inputfile, outputfile = main(sys.argv[1:])

    df = xml2df(inputfile)

    df.to_csv(outputfile + ".csv", sep=',', index=False)


查看完整回答
反对 回复 2022-09-13
  • 1 回答
  • 0 关注
  • 119 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号