""" Урок 52. Основы работы с файлами — весь код примеров одним файлом. Источник: subjects/python-fundamentals/course/lessons/52-file-basics/examples.html Файл собран автоматически (tools/build_lesson_examples.py): правьте страницу урока. Запуск: python lesson-52.py """ # ==================================================================== # Пример 1. Чтение всего файла методом read() # ==================================================================== # example_01_read.py with open("example.txt", "r", encoding="utf-8") as file: content = file.read() print(type(content)) print(content) # ==================================================================== # Пример 2. Чтение первых n символов # ==================================================================== # example_02_read_n.py with open("example.txt", "r", encoding="utf-8") as file: chunk = file.read(10) print(f"Первые 10 символов: {chunk!r}") # ==================================================================== # Пример 3. Чтение построчно методом readline() # ==================================================================== # example_03_readline.py with open("example.txt", "r", encoding="utf-8") as file: first = file.readline() second = file.readline() print(f"1: {first!r}") print(f"2: {second!r}") # ==================================================================== # Пример 4. Чтение всех строк в список # ==================================================================== # example_04_readlines.py with open("example.txt", "r", encoding="utf-8") as file: lines = file.readlines() print(type(lines)) print(lines) # ==================================================================== # Пример 5. Чтение файла в цикле # ==================================================================== # example_05_loop.py with open("example.txt", "r", encoding="utf-8") as file: for line in file: print(line, end="") # ==================================================================== # Пример 6. Запись строки методом write() # ==================================================================== # example_06_write.py with open("users.txt", "w", encoding="utf-8") as file: file.write("ID: 201 | Name: John | Age: 25 | Status: Active\n") # ==================================================================== # Пример 7. Запись списка строк методом writelines() # ==================================================================== # example_07_writelines.py data = [ "ID: 202 | Name: Alice | Age: 30 | Status: Inactive\n", "ID: 203 | Name: Bob | Age: 27 | Status: Active\n", ] with open("users.txt", "w", encoding="utf-8") as file: file.writelines(data) # ==================================================================== # Пример 8. Добавление в конец файла # ==================================================================== # example_08_append.py with open("users.txt", "a", encoding="utf-8") as file: file.write("ID: 204 | Name: Charlie | Age: 22 | Status: Active\n") # ==================================================================== # Пример 9. Режим r+ — чтение и запись # ==================================================================== # example_09_rplus.py with open("users.txt", "r+", encoding="utf-8") as file: content = file.read() print("Текущее содержимое:") print(content) file.write("ID: 205 | Name: Diana | Age: 29 | Status: Inactive\n") # ==================================================================== # Пример 10. Режим x — безопасное создание файла # ==================================================================== # example_10_x.py try: with open("new_file.txt", "x", encoding="utf-8") as file: file.write("Created in mode 'x'.\n") print("Файл создан.") except FileExistsError: print("Ошибка: файл уже существует.") # ==================================================================== # Пример 11. Несколько файлов в одном with # ==================================================================== # example_11_multiple.py with ( open("example.txt", "r", encoding="utf-8") as infile, open("output.txt", "w", encoding="utf-8") as outfile, ): for line in infile: outfile.write(line.upper()) # ==================================================================== # Пример 12. Обработка ошибок при открытии # ==================================================================== # example_12_errors.py filename = input("Введите имя файла: ") try: with open(filename, "r", encoding="utf-8") as file: print(file.read()) except FileNotFoundError: print(f"Ошибка: файл '{filename}' не найден.") except UnicodeDecodeError: print(f"Ошибка: не удалось прочитать файл '{filename}' с кодировкой utf-8.")