Привет, народ! Столкнулся с задачей: нужно сохранить список списков в файл на python, но пока не совсем понял, как это правильно сделать. Было бы здорово, если бы кто-то мог поделиться кодом и объяснить, как это работает. Заранее спасибо!
Привет, народ! Столкнулся с задачей: нужно сохранить список списков в файл на python, но пока не совсем понял, как это правильно сделать. Было бы здорово, если бы кто-то мог поделиться кодом и объяснить, как это работает. Заранее спасибо!
Ждём вас в нашем чате в Телеграмм ==>> @pythoneer_chat
А ТАКЖЕ: Канал о Python, статьи и книги ==>> @pythoneer_ru
Привет! Для сохранения списка списков в файл можно использовать модуль `csv`. Вот пример кода:
Этот код создаст файл `output.csv` и запишет в него ваши списки. Удачи!Программный код:
import csv
data = [
["Имя", "Возраст", "Город"],
["Алекс", 29, "Москва"],
["Мария", 23, "Санкт-Петербург"]
]
with open('output.csv', 'w', newline='') as file:
writer = csv.writer(file)
writer.writerows(data)
Норм тема! Но не забудь, что для чтения файла потребуется тот же модуль `csv`.Сообщение от ДжеймсБонд
Можно ещё использовать модуль `pickle`, если тебе нужно сохранить данные в бинарном формате:
Потом можно загрузить данные таким же образом.Программный код:
import pickle
data = [
["Имя", "Возраст", "Город"],
["Алекс", 29, "Москва"],
["Мария", 23, "Санкт-Петербург"]
]
with open('output.pkl', 'wb') as file:
pickle.dump(data, file)
Аккуратнее с pickle, он же может быть не безопасным, если файл нечестного источника.Сообщение от Отелло
Если ты хочешь сохранить список списков в текстовый файл в привычном формате, можно использовать `json`:
Программный код:
import json
data = [
["Имя", "Возраст", "Город"],
["Алекс", 29, "Москва"],
["Мария", 23, "Санкт-Петербург"]
]
with open('output.json', 'w') as file:
json.dump(data, file)
Кароч, json топчик для этого. И главное, человекочитаемый!Сообщение от Карина
Ещё один способ - просто записать данные в текстовый файл, разделяя элементы строками и пробелами:
Но лушче использовать что-то более структурированное, если данные сложные.Программный код:
data = [
["Имя", "Возраст", "Город"],
["Алекс", 29, "Москва"],
["Мария", 23, "Санкт-Петербург"]
]
with open('output.txt', 'w') as file:
for row in data:
file.write(" ".join(map(str, row)) + '
')
Да, текстовый файл норм, но csv или json конечно поэстетичнее будет.Сообщение от Юрий Андреевич