🔧 Как создать бинарный файл в Python? Полное руководство с примерами!

Чтобы создать бинарный файл в Python, вы можете использовать модуль struct. Этот модуль позволяет упаковывать и распаковывать данные в двоичном формате.

import struct

# Создание бинарного файла
with open('binary_file.bin', 'wb') as file:
    data = struct.pack('iif', 42, 3, 3.14)
    file.write(data)

В этом примере мы создаем файл binary_file.bin и записываем в него данные. Метод pack модуля struct позволяет упаковывать данные по указанному формату. В примере, 'iif' означает, что мы упаковываем одно целое число (int), одно целое число (int) и одно число с плавающей запятой (float). Затем мы записываем упакованные данные в файл с помощью метода write.

Детальный ответ

Как создать бинарный файл в питоне

Создание бинарных файлов в Python может быть полезным при работе с данными, которые не имеют текстового представления. В этой статье мы рассмотрим несколько способов создания и записи данных в бинарный файл.

Создание и запись данных в бинарный файл

Для создания и записи данных в бинарный файл в Python мы можем использовать модуль struct. Данный модуль предоставляет функции для упаковки и распаковки данных в двоичном формате.


import struct

# Открываем файл для записи в двоичном режиме
with open('binary_file.bin', 'wb') as file:
    # Записываем целое число
    file.write(struct.pack('i', 42))
    
    # Записываем вещественное число
    file.write(struct.pack('f', 3.14))
    
    # Записываем строку
    string = 'Привет, мир!'
    # Преобразуем строку в байтовый формат перед записью
    file.write(struct.pack(f'{len(string)}s', string.encode('utf-8')))
    

В этом примере мы используем функцию struct.pack, чтобы упаковать данные в указанном формате и записать их в бинарный файл с помощью метода write.

Чтение данных из бинарного файла

После записи данных в бинарный файл мы можем прочитать их с помощью функции struct.unpack и метода read.


# Открываем файл для чтения в двоичном режиме
with open('binary_file.bin', 'rb') as file:
    # Читаем целое число
    integer = struct.unpack('i', file.read(4))[0]
    print(f'Целое число: {integer}')
    
    # Читаем вещественное число
    float_num = struct.unpack('f', file.read(4))[0]
    print(f'Вещественное число: {float_num}')
    
    # Читаем строку
    string = struct.unpack(f'{len(string)}s', file.read(len(string)))[0].decode('utf-8')
    print(f'Строка: {string}')
    

В этом примере мы используем функцию struct.unpack для распаковки данных, прочитанных из бинарного файла методом read. После распаковки мы можем преобразовать байтовые данные обратно в строковый формат.

Использование структуры данных

Для более сложных структур данных, таких как массивы или словари, мы можем использовать библиотеку pickle.
Предварительно установите ее, выполнив команду pip install pickle.


import pickle

# Создаем структуру данных
data = {'name': 'John', 'age': 25, 'scores': [90, 85, 95]}

# Сохраняем структуру данных в бинарный файл
with open('data.pkl', 'wb') as file:
    pickle.dump(data, file)
    

В этом примере мы используем функцию pickle.dump для сериализации структуры данных и записи ее в бинарный файл.


# Читаем структуру данных из бинарного файла
with open('data.pkl', 'rb') as file:
    loaded_data = pickle.load(file)
    print(f'Загруженные данные: {loaded_data}')
    

В этом примере мы используем функцию pickle.load для десериализации данных, сохраненных в бинарном файле. Загруженные данные будут иметь исходную структуру.

Вывод

В этой статье мы рассмотрели несколько способов создания и записи данных в бинарные файлы в Python. Мы использовали модуль struct для работы с примитивными типами данных и библиотеку pickle для более сложных структур данных. Теперь вы знаете, как создавать и работать с бинарными файлами в Python.

Видео по теме

#53. Запись данных в файл в текстовом и бинарном режимах | Python для начинающих

Работа с файлами в Python. Чтение и запись данных

Бинарные файлы C++. В чем прикол? Как с ними работать?

Похожие статьи:

🔎📝 Как создать голосового помощника на Python: пошаговая инструкция для начинающих!

🐍 7 программ, которые можно написать на Python с нуля | Полезные рекомендации

📝 Как написать свой первый сайт на Python: подробный руководство и шаги 🐍

🔧 Как создать бинарный файл в Python? Полное руководство с примерами!

📖 Как преобразовать список в Python: полезные советы и примеры кода

🔢 Как ввести данные в Python через пробел

💻 Как вывести число в Python: простое руководство для начинающих 🔢