diff --git "a/\320\233\320\260\320\261\320\276\321\200\320\260\321\202\320\276\321\200\320\275\320\260\321\217 \321\200\320\260\320\261\320\276\321\202\320\260 4/task_1.py" "b/\320\233\320\260\320\261\320\276\321\200\320\260\321\202\320\276\321\200\320\275\320\260\321\217 \321\200\320\260\320\261\320\276\321\202\320\260 4/task_1.py" new file mode 100644 index 0000000..149536a --- /dev/null +++ "b/\320\233\320\260\320\261\320\276\321\200\320\260\321\202\320\276\321\200\320\275\320\260\321\217 \321\200\320\260\320\261\320\276\321\202\320\260 4/task_1.py" @@ -0,0 +1,17 @@ +import json + +INPUT_FILE = "input.json" + + +def task() -> float: + """ + Функция для подсчета суммы произведений двух значений в каждом словаре из JSON файла. + """ + with open(INPUT_FILE, "r", encoding="utf-8") as input_file: + json_data = json.load(input_file) + + sum_data = sum([item["score"] * item["weight"] for item in json_data]) + return round(sum_data, 3) + + +print(task()) diff --git "a/\320\233\320\260\320\261\320\276\321\200\320\260\321\202\320\276\321\200\320\275\320\260\321\217 \321\200\320\260\320\261\320\276\321\202\320\260 4/task_2.py" "b/\320\233\320\260\320\261\320\276\321\200\320\260\321\202\320\276\321\200\320\275\320\260\321\217 \321\200\320\260\320\261\320\276\321\202\320\260 4/task_2.py" new file mode 100644 index 0000000..9d46bb5 --- /dev/null +++ "b/\320\233\320\260\320\261\320\276\321\200\320\260\321\202\320\276\321\200\320\275\320\260\321\217 \321\200\320\260\320\261\320\276\321\202\320\260 4/task_2.py" @@ -0,0 +1,27 @@ +import json +import csv + +INPUT_FILENAME = "input.csv" +OUTPUT_FILENAME = "output.json" + + +def task() -> None: + """ + Конвертер из CSV в JSON формат + + Функция считывающая данные из CSV-файла, преобразуя их в список словарей и сохраняя данные в файле JSON. + """ + with open(INPUT_FILENAME, "r", encoding="utf-8") as input_file: + reader = csv.DictReader(input_file, delimiter=",", quotechar="\n") + list_data = [row for row in reader] + + with open(OUTPUT_FILENAME, "w", encoding="utf-8") as output_file: + json.dump(list_data, output_file, indent=4) + + +if __name__ == '__main__': + task() + + with open(OUTPUT_FILENAME) as output_f: + for line in output_f: + print(line, end="")