Можно ли в 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
📱📱 tirik! U oʻrta byudjetli Xperia 10 VII smartfonini taqdim etdi
ℹ️ Yangi model Google Pixel yoki iPhone Air’ni eslatuvchi zamonaviy dizaynga ega.
📸 Korpusida alohida kamera tugmasi mavjud, old tomonida esa stereo dinamiklar joylashgan.
🔋 Ishlab chiqaruvchining aytishicha, smartfon bir marta zaryad bilan ikki kungacha ishlashi mumkin.
💾 Shuningdek, 3,5 mm quloqchin ulagichi va 2 TB gacha boʻlgan microSD-kartalarni qoʻllab-quvvatlaydi.
⚙️ Asosiy xususiyatlari:
• Displey: 6,1" 2340×1080 OLED, 120 Hz
• Chipset: Snapdragon 6 Gen 3
• Kameralar: 50 MP + 13 MP keng burchak + 8 MP selfi
• Xotira: 8+128 GB
• Aloqa: 5G, NFC, Wi-Fi 6e, Bluetooth 5.4
• Namlikdan himoya: IP68
• Batareya va zaryadlash: 5000 mA·soat
💵 Narxi: 450 yevrodan boshlab.
➡️#sony | Birinchi raqamli IT-Blog
📱📱 nihoyat o‘zining smartfon ishlab chiqarishini to‘xtatdi.
🇯🇵 Yaponiya nashri SumahoDigest xabariga ko‘ra, Sony rasmiy saytida endilikda kompaniya o‘z zavodlarida ishlab chiqaradigan mahsulotlar ro‘yxatidan “smartfonlar” bo‘limini butunlay olib tashlangan.
⚠️ Ammo bu Sony bozorni tark etmoqda degani emas. Shunchaki, endi barcha Xperia modellari (shu jumladan flagmanlar ham) uchinchi tomon ishlab chiqaruvchilar tomonidan tayyorlanadi. Bu kompaniyalar ilgari o‘rta narx toifasidagi Sony smartfonlarini ishlab chiqargan edi.
🎨 Sony esa endi faqat qurilmalar dizayni va texnik tavsifi uchun javobgar bo‘ladi.
➡️#sony | Birinchi raqamli IT-Blog
📱📱 Xperia 1 VII: yangi flagman, kuchli kamera va uzoq muddatli qo‘llab-quvvatlash
ℹ️ Sony kompaniyasi 2025-yil 15-may kuni Xperia 1 VII smartfonini taqdim etadi. Rasmiy taqdimotdan oldin, marketing materiallari va rasmiy renderlar internetga sizib chiqdi. Ushbu yangi model avvalgi Xperia 1 VI dizaynini saqlab qolgan bo‘lsa-da, texnik jihatdan sezilarli yangilanishlarga ega.
📸 Kamera tizimi
- Asosiy kamera: 48 MP, optik tasvir barqarorlashtirish (OIS) bilan.
- Ultra keng burchakli kamera: 12 MP, avvalgi modelga nisbatan 2,1 baravar katta sensor bilan.
- Periskop telefoto kamera: 12 MP, 70–200 mm optik zum bilan.
🔓 Sony Alpha kameralaridan ilhomlangan ushbu tizim, "Lock Focus" va "Autoframing" kabi funksiyalarni qo‘llab-quvvatlaydi. Shuningdek, makro rejimda yuqori sifatli suratga olish imkoniyati mavjud.
🔧 Texnik xususiyatlar
- Protsessor: Snapdragon 8 Elite.
- Operativ xotira: 12 yoki 16 GB.
- Ichki xotira: 256 yoki 512 GB.
- Displey: 6,5 dyuymli OLED, 4K pikselli, 120 Hz yangilanish tezligi bilan.
- Batareya: 5 000 mAh, 30 W tez zaryadlash va simsiz zaryadlashni qo‘llab-quvvatlaydi.
- Audio: Hi-Res Audio, LDAC, DSEE Ultimate, old tomonlama stereo dinamiklar.
- Boshqa: 3,5 mm audio jack, microSD slot, yon tomonda barmoq izi skaneri va kamera tugmasi.
💰 Xperia 1 VII'ning boshlang‘ich narxi taxminan $1,399 bo‘lishi kutilmoqda. Avval Yevropada iyul oyida sotuvga chiqarilishi rejalashtirilgan.
👉#sony | Birinchi raqamli IT-Blog
索尼(中国)首发电视专业校色服务,支持2021~2025款电视
索尼(中国)最近推出了电视专业校色服务,成为国内首个提供该服务的电视品牌。该服务由索尼工程师通过卡尔曼专业校色软件、专用监听及信号发生器,对电视的亮度、色彩和灰阶进行精准调校,大概效果接近索尼基准级标准或满足此次服务支持2021至2025年间的部分BRAIVA模型电视,首先在北京、上海、广州三地推出,费用为999元(含30个积分内上门服务),2025年11月18日至12月31日期间,索尼铂金会员可享半价优惠。
标签:#Sony
Created by RocM
官方频道:@rocCHL
官方群组:@roctech
官方合作:@rocmmbot
🐉QuickSwap DEX just launched with Algebra Integral on Soneium!
The first Modular CLAMM is now live on a chain powered by #Sony Block Solutions Labs & Startale, unlocking powerful DeFi tools on a creative-first L1.
💧 $2.42M TVL already
🔧 Powered by Algebra Integral
🌐 Welcome to next-gen DeFi on Soneium with QuickSwap & Algebra!
Sony VENICE Extension System Mini
Ключевые особенности:
- Внутри камеры уже установлен тот же полнокадровый CMOS-сенсор 8.6K, что и в VENICE 2 8K, что устраняет необходимость замены сенсорных блоков.
- Совместимо с моделями VENICE 2 6K и 8K.
- Пользователи VENICE 2 6K могут снимать с разрешением 8K с помощью этой системы.
- В комплект входят 9 вставных ND-фильтров, включая прозрачный ND-фильтр, с индивидуальной плотностью, автоматически распознаваемой камерой VENICE 2.
- Компактный, легкий удлинитель датчика
- Съемный кабель 14,8′
- Крепления объективов Sony E и ARRI PL
- Порт данных объектива Cooke /i в креплении PL
- Встроенный гироскопический датчик с метаданными
- Назначаемые пользовательские кнопки
- Захват пластины 3D/VR и VFX
#Sony VENICE Extension System Mini поступит в продажу в августе по цене $25 000 USD . Для сравнения, VENICE Rialto 2 Camera Extension System продается по цене $18 999,99 USD.
Стартовая цена Sony VENICE 2 составляет 58 000 долларов США.