m0_58248973
2021-06-23 14:43
采纳率: 40%
浏览 20

python使用数据内容打印列表

 我想将文件夹内的每个数据打印出单独自己的列表,可是最后打印出的列表是依次增多的(如图),怎么回事?

import os
import shutil
import re
import codecs

src_dir_path = r'C:\\Users\\user\\Desktop\\shuju\\esm小样'       
ls1 = []
ls2 = []
book = xlwt.Workbook(encoding='utf-8',style_compression=0)
sheet = book.add_sheet('1',cell_overwrite_ok=True)
for file in os.listdir(src_dir_path):                                
     if os.path.exists(src_dir_path):                                         
        if os.path.isfile(src_dir_path+'/'+file):                        
            with open(src_dir_path+"\\"+file,'r',encoding='utf-8') as f: 
                for num, line in enumerate(f):                          
                    if num < 50:
                       information = line.split(":")                                 
                       classification = information[ 0 ]
                       data = information[1]
                       classification1 = classification.rstrip()
                       data1 = data.rstrip()
                       ls1.append(classification1)
                       ls2.append(data1)
                print(ls1)       
                print(ls2)

  • 好问题 提建议
  • 收藏

1条回答 默认 最新

  • robot8me 2021-06-23 14:49
    已采纳

    你如果只是想打印的话,可以把ls1和ls2的定义放到with open里面。现在ls1和ls2都在最外层,所以第一文件的内容放进去以后,循环第二个文件时ls1和ls2里面有第一个文件的内容

    已采纳该答案
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题