Строка — это последовательность символов, а CSV (Comma-Separated Values) — это файл, в котором значения разделены запятыми. В этом руководстве по Python вы узнаете, как преобразовать строку в формат CSV.

Преобразование строк в формат CSV — распространённая задача в проектах по анализу данных. Например, информация, полученная из разных источников, может быть преобразована из строки и записана в файл CSV. После этого с помощью этого CSV-файла можно выполнять различные задачи по обработке и анализу данных.

В Python есть несколько способов преобразовать строку в CSV-файл. Строки — это последовательности символов, а CSV-файлы содержат данные или значения, разделённые запятыми.

В этом случае я не буду использовать сторонние библиотеки или модули, а только те, которые идут в комплекте с Python, или встроенные методы языка.

С использованием модуля csv

В Python существует модуль csv, предназначенный для работы с данными в формате CSV. В этом модуле есть функция writerow(), которая позволяет записывать данные в файл CSV. Однако в этой статье мы рассмотрим, как можно записать строку в файл CSV.

Например, посмотрите на код ниже.

import csv

data_string = """Name, Age, Occupation
Roy, 28, Data Scientist
Vincent, 34, Web Developer
Willie, 25, Graphic Designer"""

# splitting the string into rows
data_rows = data_string.strip().split('\n')

with open('output.csv', 'w', newline='') as file:
    writer = csv.writer(file)
    for row in data_rows:
        # split each row on comma and write to CSV using writerow() method
        writer.writerow(row.split(', '))

Строка Python в CSV с использованием модуля csv

Файл data.csv создаётся на основе выходных данных и содержит строку, записанную методом writerow() объекта writer.

Позвольте мне объяснить код:

  1. Сначала мы определяем строку data_string.
  2. Затем мы удаляем нежелательные символы из строки, вызывая метод Strip().
  3. После этого мы разделяем строку на отдельные строки, используя разделение по символу новой строки (‘\n’).

Затем мы открываем файл в режиме записи «w» с помощью следующего кода: open(‘output.csv’, ‘w’, newline=»). Если файл output.csv уже существует, мы возвращаем файловый объект как «file».

Если файл output.csv отсутствует, мы создаём новый файл. Затем мы используем модуль csv и метод write() для записи данных в файл. Мы передаём файловый объект в метод write() с помощью csv.writer(file). Этот метод возвращает объект writer.

Затем мы используем следующий код для записи данных в файл: для каждой строки в data_rows мы разделяем её на части, используя запятую, с помощью row.split(«,»). И наконец, мы записываем каждую часть строки в файл output.csv с помощью метода writerow().

Вы можете увидеть, что файл data.csv открыт в Google Colab в виде таблицы. Если вы загрузите этот файл и откроете его в текстовом редакторе, то увидите, что каждое значение в CSV-файле разделено запятой.

С использованием метода write()

Также вы можете отформатировать строку для CSV-файла, а затем использовать метод write() файла для записи этой строки в CSV-файл.

Например, посмотрите на код ниже, который записывает строку в CSV-файл:

# defined string into my_str variable
my_str = 'Bobby;456;983'

# open file my_file.csv in writting mode.
with open('file.csv', 'w') as out:

    #splitting string into list of substring based on the delimiter ';' 
    #and joins them with a comma(',') using the ','.join() method.
    lines = [','.join(line) for line in my_str.split(';')]

    # joining the elements of the lines list using the newline character('\n') as the      separator, creating a new string my_str
    my_str = '\n'.join(lines)
    # writing the content of my_str to the 'file.csv' file using the write() method
    out.write(my_str)

с использованием метода write()

В итоге на вашем компьютере появится файл file.csv. Если вы откроете этот файл, то увидите, что каждый символ строки отделён запятой.

Добавить комментарий