0
私は1500個ものテキストファイルを持っており、すべてのテキストファイルから5行、たとえば4,5,9,14,32行をコピーしたいと思います。これらのファイルの列は、1,500のテキストファイルのうちの一つ下のExcelシートにある。私は1つのtxtファイルだけを取るが、すべてのデータを行にコピーするコードを見つけました。どんな助けもありがとう。 はここに私のコードです:あなたが最初に現在のフォルダに必要なテキストファイルのすべてを置く必要があるだろう特定の行を複数のテキストファイルからExcelファイルにコピーする
import csv
import xlwt
import os
import sys
# Look for input file in same location as script file:
inputfilename = os.path.join(os.path.dirname(sys.argv[0]),
'C:/path/filename.txt')
# Strip off the path
basefilename = os.path.basename(inputfilename)
# Strip off the extension
basefilename_noext = os.path.splitext(basefilename)[0]
# Get the path of the input file as the target output path
targetoutputpath = os.path.dirname(inputfilename)
# Generate the output filename
outputfilename = os.path.join(targetoutputpath, basefilename_noext + '.xls')
# Create a workbook object
workbook = xlwt.Workbook()
# Add a sheet object
worksheet = workbook.add_sheet(basefilename_noext, cell_overwrite_ok=True)
# Get a CSV reader object set up for reading the input file with tab
delimiters
datareader = csv.reader(open(inputfilename, 'rb'),
delimiter='\t', quotechar='"')
# Process the file and output to Excel sheet
for rowno, row in enumerate(datareader):
for colno, colitem in enumerate(row):
worksheet.write(rowno, colno, colitem)
# Write the output file.
workbook.save(outputfilename)
# Open it via the operating system (will only work on Windows)
# On Linux/Unix you would use subprocess.Popen(['xdg-open', filename])
os.startfile(outputfilename)
興味のある行ごとに列を持ちたいのですが、それらの行を抽出した各ファイルの行を入れたいのですか? 'xlwt'を使う必要がありますか? – albert