[英]Convert txt files in a folder to rows in csv file
我的一個文件夾中有100個txt文件。 我想創建一個csv文件,其中每個文本文件的內容在此csv文件中變為一行(實際上是一行中的單個單元格)。 因此,結果將是具有100行的csv文件。
我嘗試了以下代碼:
import glob
read_files = glob.glob('neg/*')
with open("neg.csv", "wb") as outfile:
for f in read_files:
with open(f, "rb") as infile:
for line in infile:
outfile.write(line)
由於每個txt文件都包含多個段落,因此這會創建包含數千行的csv。 有什么建議嗎?
嘗試:
import glob
import csv
read_files = glob.glob('neg/*')
with open("neg.csv", "wb") as outfile:
w=csv.writer(outfile)
for f in read_files:
with open(f, "rb") as infile:
w.writerow([line for line in infile])
這使得每行輸出中的一個單元格,每個文件一行。
如果希望每個單元格都是文件的全部內容,請嘗試:
import glob
import csv
read_files = glob.glob('neg/*')
with open("neg.csv", "wb") as outfile:
w=csv.writer(outfile)
for f in read_files:
with open(f, "rb") as infile:
w.writerow(" ".join([line for line in infile]))
在寫每一line
之前,首先要做line.replace('\\n',' ')
用空格替換所有新行字符。
顯然,根據您的操作系統調整換行符。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.