Как конвертировать текстовый файл в CSV в Python - PullRequest
0 голосов
/ 26 ноября 2018

Мне нужно преобразовать текстовый файл в файл csv. Нижеприведенная команда не работает в python, который отлично работает в командной строке. Пожалуйста, помогите мне исправить проблему.

subprocess.call("sed 's/[[:space:]]\+/,/g' test.txt > test.csv")

Содержание теста.TXT

jega mca
divya BE
ramya MA

Ответы [ 4 ]

0 голосов
/ 26 ноября 2018

Вот еще одно решение, использующее библиотеку Python csv :

import csv
with open('test.txt', 'r') as f:
    content = f.readlines()
    with open('test.csv', 'w+',  newline = '') as csvFile:
        csvWriter = csv.writer(csvFile, delimiter = ' ')
        for elem in content:
            csvWriter.writerow([elem.strip()])
0 голосов
/ 26 ноября 2018

возможно использовать простой питон:

result = ''

with open('file.txt') as f:
    result = '\n'.join(f.readlines())

with open('output.csv') as f:
    for line in result.split('\n'):
        line = line.replace(' ', ',')
        f.write(line + '\n')
0 голосов
/ 26 ноября 2018

Добавить shell=True

subprocess.call("sed 's/[[:space:]]\+/,/g' test.txt > test.csv", shell=True) 
0 голосов
/ 26 ноября 2018

Вы можете использовать библиотеку pandas для этого.Следующий код может работать:

import pandas as pd
data = pd.read_csv('test.txt', sep=" ", header=None)
df.to_csv(test.csv, sep=',')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...