• Предмет: Информатика
  • Автор: dariaaass
  • Вопрос задан 5 месяцев назад

Допоможіть зробити лабораторну Python

Буду дуже вдячна!)

1. Написати програму, яка зберігає і зчитує з файла students.csv словник з прізвищами студентів у форматі «прізвище : рік народження». Для цього створити 2 підпрограми.

2. Написати програму, яка збереже у файл дані у форматі JSON про книги і їх авторів. Дані зчитуються з клавіатури.

Ответы

Ответ дал: wherethefux
2

1:

students = {}

def readStudents():

   with open('students.csv', 'r') as file:

       for line in file:

           line = line.strip()

           line = line.split(',')

           students[line[0]] = line[1]

   return students

def writeStudents():

   with open('students.csv', 'w') as file:

       for key, value in students.items():

           file.write(key + ',' + value + '')

readStudents()

writeStudents()

# 1. Створюємо пустий список students

# 2. Викликаємо функцію readStudents, яка зчитує дані з файлу students.csv і записує їх в список students

# 3. Викликаємо функцію writeStudents, яка записує дані з списку students в файл students.csv

2:

import json

books = []

while True:

   book = input("Введіть назву книги: ")

   author = input("Введіть автора книги: ")

   books.append({"Книга": book, "Автор": author})

   if input("Продовжити? (y/n): ") == "n":

       break

with open("books.json", "w") as file:

   json.dump(books, file)

# 1. Створюємо пустий список books

# 2. Запускаємо цикл while, який буде працювати до тих пір, поки користувач не введе "n"

# 3. Запитуємо користувача назву книги та автора

# 4. Додаємо в список books словник з ключами "Книга" та "Автор" та відповідними значеннями

# 5. Запитуємо користувача, чи бажає він продовжити введення книг

# 6. Якщо користувач ввів "n", то виходимо з циклу

# 7. Відкриваємо файл books.json для запису

# 8. Записуємо в файл список books в форматі json

# 9. Закриваємо файл


dariaaass: Дуже вам вдячна! Виручили
dariaaass: Чомусь в першій програмі видає помилку IndexError: list index out og range рядок students[line[0]] = line[1]
dariaaass: Можливо я щось неправильно сохранила
dariaaass: А потрібно оцей словник з прізвищами создавати в Excel і потім зберігати як csv?
Вас заинтересует