TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #241 · 5 мај

Можно ли в Python создавать бинарные файлы? Конечно можно. Для этого в Python есть следующие инструменты: ▫️ тип данных bytes и bytearray ▫️ открытие файла в режиме wb (write binary) или rb (read binary) ▫️ модуль struct Про модуль struct поговорим в первую очередь. Файл в формате JSON или Yaml внутри себя содержит разметку данных. Всегда можно определить где список начался а где закончился. Где записана строка а где словарь. То есть формат записи данных содержит в себе элементы разметки данных. В binary-файле данные не имеют визуальной разметки. Это просто байты, записанные один за другим. Правила записи и чтения находятся вне файла. Модуль struct как раз и помогает с организацией данных в таком файле с помощью определения форматов записи для разных частей файла. Модуль struct преобразует Python-объекты в массив байт, готовый к записи в файл и имеющий определённый вид. Для этого всегда следует указывать формат преобразования (или, как оно здесь называется - запаковки). Формат нужен для того, чтобы выделить достаточное количество байт для записи конкретного типа объекта. В последствии с помощью того же формата будет производиться чтение. При этом следует помнить что мы говорим о типах языка С а не Python. Именно формат определяет, что записано в конкретном месте файла, число, строка или что-то еще. Вот какие токены формата у нас есть. Помимо этого, первым символом можно указать порядок байтов. На разных системах одни и те же типы данных могут записываться по-разному, поэтому желательно указать конкретный способ из доступных. Если этого не сделать, то используется символ '@', то есть нативный для текущей системы. В строке формата мы пишем в каком порядке и какие типы собираемся преобразовать в байты. Запакуем в байты простое число, токен "i". >>> import struct >>> struct.pack('=i', 10) b'\n\x00\x00\x00' Теперь несколько float, при этом нужно передавать элементы не массивом а последовательностью аргументов. >>> struct.pack('=fff', 1.0, 2.5, 4.1) b'\x00\x00\x80?\x00\x00 @33\x83@' Вместо нескольких токенов можно просто указать нужное количество элементов перед одним токеном, результат будет тот же. >>> struct.pack('=3f', 1.0, 2.5, 4.1) b'\x00\x00\x80?\x00\x00 @33\x83@' Теперь запакуем разные типы >>> data = struct.pack('=fiQ', 1.0, 4, 100500) я запаковал типы float, int и unsigned long long (очень большой int, на 8 байт) b'\x00\x00\x80?\x04\x00\x00...' Распаковка происходит аналогично, но нужно указать тот же формат, который использовался при запаковке. Результат возвращается всегда в виде кортежа. >>> struct.unpack('=fiQ', data) (1.0, 4, 100500) Как видите, ничего страшного! #lib#basic

Hashtags

Резултати

Пронајдени 8 слични објави

Пребарај: #voltbro

当前筛选 #voltbro清除筛选
Voltbro/Братья Вольт

@Voltbro_official · Post #68 · 08.07.2025 г., 08:30

Мы начинаем I Чемпионат по космической робототехнике "Кубок Роверов" 🏆🤖 Сегодня начинается первый день соревнований. Команды потихоньку начинают собираться в НИИ механики МГУ, в котором для них подготовлены аудитории для подготовки своего оборудования, испытательный полигон с естественным природным ландшафтом, и пирожки и кофе 🥧☕️ Пожелаем удачи командам и организаторам! #rovercup#voltbro#кубокроверов

Voltbro/Братья Вольт

@Voltbro_official · Post #20 · 06.06.2025 г., 14:50

Эксперты завершили оценку Итоговых отчетов для допуска к финалу чемпионата по космической робототехнике "Кубок Роверов" и мы готовы объявить результаты. Команды, которые приглашаются на финал: 🏆Лига 1. Навесное оборудование для ровера: 1. KSX - г. Великий Новгород 2. Высотка - г. Москва 3. АЦТ-111 - г. Санкт-Петербург 4. Квазар - г. Калининград 5. Лужайка - г. Волгоград 🏆Лига 2. Малый ровер: 1. techno_team - г. Новосибирск 2. PowerRangers - г. Новосибирск 3. КТИМ - г. Новомосковск Спасибо командам Космостарс и Космоксик, которые не прошли в финал, за участие! Мы надеемся, что за этот год вы приобрели необходимые навыки для успешного участия в нашем Чемпионате в следующем году! Напоминаем, что финал пройдет с 8-го по 11-ое июля на базе НИИ механики МГУ им. М.В. Ломоносова Всю информацию о Чемпионате можно найти на сайте: https://roverchallenge.ru/ #voltbro#кубокроверов#братьявольт

Voltbro/Братья Вольт

@Voltbro_official · Post #6 · 25.05.2025 г., 19:16

У нас продолжается региональный отбор в конкурсе "АгроНТРИ" Мы ведем номинацию АгроРоверы и год от года она становится всё серьезней и серьезней. Наша номинация достаточно сложная, но огромный прогресс в том, что мы получаем обратную связь от коллег в АгроВУЗах - что как лучше организовать и как доделать. Это огромный прогресс по сравнению с первыми разами, когда просто все делали как могли. Будем расти дальше. Спасибо огромное всем агроВУЗам, которые не бросили из-за сложности, а постарались разобраться. #АгроНТРИ#АгроРоверы#Voltbro

Voltbro/Братья Вольт

@Voltbro_official · Post #100 · 14.07.2025 г., 15:17

Небольшой видеоролик о прошедшем финале I-го Чемпионата по космической робототехнике "Кубок Роверов" 2025 года! https://vk.com/video-206862623_456239563 Будем ждать всех в следующем соревновательном году! Уже скоро анонс еще одного роверного соревнования 🤖🏎 #rovercup#кубокроверов#voltbro#братьявольт

Voltbro/Братья Вольт

@Voltbro_official · Post #280 · 29.10.2025 г., 07:28

🚀 1 ноября завершается регистрация на чемпионат по космической робототехнике «Кубок Роверов»! Регистрация членов команд здесь: roverchallenge.ru/reg 👨‍🚀 Участвовать могут как школьные (с 8-го класса), так и студенческие команды. Компетенции в команде: электронщик, конструктор, программист. Регламент чемпионата соответствует международным соревнованиям RoverChallenge, в которых российская команда заняла 2-е место в Канаде в этом году! Вас ждут космические задания, где вы: - освоите ROS (Robot Operating System), Python и C; - попробуете симулятор Gazebo; - поработаете с электроникой, схемотехникой и системами связи; - прокачаете навыки проектной деятельности — командную работу, защиту проектов, видеомонтаж, создание презентаций и документации. Чемпионат проходит при поддержке Госкорпорации «Роскосмос» и НИИ механики МГУ им. М.В. Ломоносова. #voltbro#кубокроверов#rovercup#вольтбро#роскосмос

Voltbro/Братья Вольт

@Voltbro_official · Post #196 · 15.09.2025 г., 14:37

🚀 Начинаем новый сезон чемпионата по космической робототехнике «Кубок Роверов»! Если ты хочешь попробовать себя в разработке роботов, работающих в реальных условиях, — этот чемпионат для тебя. 📅Регистрация открыта до 1 ноября 2025 → roverchallenge.ru/reg 👨‍🚀 Участвовать могут как школьные (с 8-го класса), так и студенческие команды. Вас ждет работа над проектом, где вы: - познакомитесь с космическими миссиями и планетоходами; - освоите ROS (Robot Operating System), Python и C; - попробуете симулятор Gazebo; - поработаете с электроникой, схемотехникой и системами связи; - прокачаете навыки проектной деятельности — командную работу, защиту проектов, видеомонтаж, создание презентаций и документации. Каждая команда сможет придумать и реализовать свой научный проект по исследованию планет. Видео с Финала I-го чемпионата: https://vkvideo.ru/video-206862623_456239563 ℹ️ Подробнее о чемпионате — на сайте: roverchallenge.ru Чемпионат проходит при поддержке Госкорпорации «Роскосмос» и НИИ механики МГУ им. М.В. Ломоносова. 🏆 Впереди вас ждет много промежуточных отчетов и финальных призов, а финал состоится в Москве в июле 2026 года. Ждем как начинающих, так и опытных робототехников! #voltbro#кубокроверов#rovercup#вольтбро#роскосмос

Voltbro/Братья Вольт

@Voltbro_official · Post #266 · 15.10.2025 г., 13:03

Первый набор электроники VBCores для участия в чемпионате "Кубок Роверов" наконец-то нашёл своих счастливых обладателей! Ими стали прошлогодние финалисты Лиги 1 — команда "Высотка". 🏆 Мы уверены, что с этим комплектом у них получится добиться ещё более впечатляющих результатов, создавая своего собственного ровера для Лиги 2. А мы тем временем готовим учебный курс по работе с VBCores — от первых шагов и запуска простых примеров до сборки настоящей электроники для управления ровером. #voltbro#вольтбро#кубокроверов#rovercup#vbcores

Voltbro/Братья Вольт

@Voltbro_official · Post #237 · 03.10.2025 г., 12:05

🚀 Друзья! Напоминаем, что регистрация на II Чемпионат по космической робототехнике «Кубок Роверов» продолжается! «Кубок Роверов» — российский аналог международных Rover Challenge, где школьники и студенты создают собственные планетоходы и проверяют их в условиях, максимально приближенных к реальным космическим миссиям. Это шанс проявить инженерное мышление, прокачать навыки проектирования, электроники и программирования, научиться работать в команде и стать частью сообщества будущих исследователей космоса. ✨ В этом году участников ждёт: 1️⃣Совершенно новая станция для задачи технического обслуживания в Лигах 1 и 2 2️⃣Переход на ROS2 в Лиге 1 3️⃣Рекомендуемые наборы электроники на базе STM32 4️⃣Ещё больше образовательных видео и методических материалов 🔗Успейте зарегистрироваться: https://roverchallenge.ru/reg 📸 Фото, результаты прошлого года и все подробности — на официальном сайте: https://roverchallenge.ru/ Будущее космоса начинается здесь — присоединяйтесь к Чемпионату «Кубок Роверов»! #voltbro#кубокроверов#rovercup#вольтбро#роскосмос#msu