web-dev-qa-db-ja.com

txtをcsvに変換python script

私はこれを含む.txtファイルを持っています-2.9、Gardena CA

私がやろうとしているのは、pythonスクリプトを使用してそのテキストを.csv(テーブル)に変換することです。

import csv
import itertools

with open('log.txt', 'r') as in_file:
    stripped = (line.strip() for line in in_file)
    lines = (line for line in stripped if line)
    grouped = itertools.izip(*[lines] * 3)
    with open('log.csv', 'w') as out_file:
        writer = csv.writer(out_file)
        writer.writerow(('title', 'intro'))
        writer.writerows(grouped)

Log.csvファイルで得られる出力は、title、intro、taglineです。

Log.csvファイルに表示するものは次のとおりです。

title,intro
2.9,Gardena CA
7
Adam Eliezerov

最初に行を分割する必要があります。

import csv

with open('log.txt', 'r') as in_file:
    stripped = (line.strip() for line in in_file)
    lines = (line.split(",") for line in stripped if line)
    with open('log.csv', 'w') as out_file:
        writer = csv.writer(out_file)
        writer.writerow(('title', 'intro'))
        writer.writerows(lines)
25
Tom Yates
import pandas as pd
df = pd.read_fwf('log.txt')
df.to_csv('log.csv')
9
Kit Stark

これは私がそれを行う方法です:

 with open(txtfile, 'r') as infile, open(csvfile, 'w') as outfile:
        stripped = (line.strip() for line in infile)
        lines = (line.split(",") for line in stripped if line)
        writer = csv.writer(outfile)
        writer.writerows(lines)

それが役に立てば幸い!

2
iun1x

これが必要な出力だと思います:

2.9、カリフォルニア州ガーデナ

コードに次の変更を加えることで実行できます。

import csv import itertools with open('log.txt', 'r') as in_file: lines = in_file.read().splitlines() stripped = [line.replace(","," ").split() for line in lines] grouped = itertools.izip(*[stripped]*1) with open('log.csv', 'w') as out_file: writer = csv.writer(out_file) writer.writerow(('title', 'intro', 'tagline')) for group in grouped: writer.writerows(group)

1
rodmartinez