Поиск…


Вступление

Запись в CSV-файл не похожа на запись в обычный файл в большинстве случаев и довольно проста. Я, насколько это возможно, рассмотрю самый простой и эффективный подход к проблеме.

параметры

параметр подробности
открыть ( «/ путь /» , «режим») Укажите путь к файлу CSV
open (путь, «режим» ) Укажите режим открытия файла (чтение, запись и т. Д.).
csv.writer ( файл , разделитель) Пропустите открытый CSV-файл здесь
csv.writer (файл, разделитель = '' ) Укажите символ или шаблон разделителя

замечания

open( path, "wb")

"wb" - режим записи.

Параметр b в "wb" мы использовали, необходим, только если вы хотите открыть его в двоичном режиме, который требуется только в некоторых операционных системах, таких как Windows.

csv.writer ( csv_file, delimiter=',' )

Здесь разделитель, который мы использовали, заключается в том , что мы хотим, чтобы каждая ячейка данных в строке содержала первое имя, фамилию и возраст соответственно. Поскольку наш список разделен вдоль , тоже, оказывается весьма удобно для нас.

Пример базовой записи

import csv

#------ We will write to CSV in this function ------------

def csv_writer(data, path):
    
    #Open CSV file whose path we passed.
    with open(path, "wb") as csv_file:
        
        writer = csv.writer(csv_file, delimiter=',')
        for line in data:
            writer.writerow(line)



#---- Define our list here, and call function ------------

if __name__ == "__main__":

    """
    data = our list that we want to write. 
    Split it so we get a list of lists.
    """
    data = ["first_name,last_name,age".split(","),
            "John,Doe,22".split(","),
            "Jane,Doe,31".split(","),
            "Jack,Reacher,27".split(",")
            ]

    # Path to CSV file we want to write to.
    path = "output.csv"
    csv_writer(data, path)

Добавление строки в качестве новой строки в файле CSV

def append_to_csv(input_string):
    with open("fileName.csv", "a") as csv_file:
        csv_file.write(input_row + "\n")


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow