首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将数据从for循环保存到单个列表

将数据从for循环保存到单个列表
EN

Stack Overflow用户
提问于 2017-09-13 16:25:28
回答 1查看 40关注 0票数 1

我有一个文件上传页面,用户上传他们的文件,他们通常都是files.In --我的python代码--我试图从该文件中提取一个标记,然后保存到一个列表中,所以一切都很好,但是这里我得到了3个文件的三个不同的输出列表。如何将3个输出列表组合成one.Here是我的代码

代码语言:javascript
复制
    a=self.filename
    print(a) #this prints out the uploaded file names(ex: a.xml,b.xml,c.xml)
    soc_list=[]
    for soc_id in self.tree.iter(tag='SOC_ID'):
        req_soc_id = soc_id.text
        soc_list.append(req_soc_id)
    print(soc_list)

我得到的输出是:

代码语言:javascript
复制
    a.xml
    ['1','2','3']
    b.xml
    [4,5,6]
    c.xml
    [7,8,9]

我想把所有的都合并成一个列表

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-13 17:26:26

据我分析,我认为您希望将所有soc_list值写入单个文件,然后可以将该文件读回。这样做对来说是最好的方法,因为您将不知道用户文件上传,就像您在问题中提到的那样。若要这样做,请尝试理解并实现以下代码以保存到您的文件中。

代码语言:javascript
复制
    save_path = "your_path_goes_here"
    name_of_file = "your_file_name"
    completeName = os.path.join(save_path, name_of_file + ".txt")
    file1 = open(completeName, 'a')
    for soc_id in self.tree.iter(tag='SOC_ID'):
        req_soc_id = soc_id.text
        soc_list.append(req_soc_id)
        file1.write(req_soc_id)
        file1.write("\n")
    file1.close()

通过这种方式,您可以始终将数据写入文件,然后读取数据并将其转换为列表,如下所示

代码语言:javascript
复制
    examplefile = open(fileName, 'r')
    yourResult = [line.split('in_your_case_newline_split') for line in examplefile.readlines()]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46202537

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档