Можно ли в 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
#uxui / #webdesign
P I X S O
Yaqindagina barcha imkoniyatlari bepul bo'lgan ajoyib veb dizaynerlar uchun dastur ishga tushurildi.
Dastur ba'zi imkoniyatlarini saytidan screenshot oldim. → pixso.net
Narxlari figmada mavjud imkoniyatlar bilan barchasi bepul ekan.
Foydalanganlar YouTube'da darrov videolar ham olishdi. Alexey ham bu haqida ushbu videoda yoritib berishga harakat qildi, video:
https://youtu.be/yX5Jo4hLgsM
@redfoxuz — dizayn haqida gaplashamiz.
@redfoxuz / #uxui / #webdesign
UX da animatsiyalar ishlatilishi (izlash shart emas).
Hozirgi vaqtga kelib interfeys animatsiyasi bilan foydalanuvchida taassurot qoldirish yoki ajablantirish juda ham qiyin jarayon hisoblanadi. Agar bunday bo'lsa animatsiyani asosiy vazifalari qanday? Dastur oynalari o'rtasidagi munosabatlarni ko'rsatish, foydalanuvchi e'tiborini yo'naltirish va dasturni qanday ishlashini tushuntirishdan iborat. UI/UX yurtimizda rivojlanib kelayotgan dizaynerlik sohalaridan biri hisoblanadi. Lekin men hali o'zbek tilida shu sohaga oid maqola uchratmadim. Maqolam qiziqarliroq bo'lishi uchun UX da animatsiya mavzusini tanladim va bu sizga yoqadi degan umiddaman.
Batafsil: https://redfox.uz/ux-da-animatsiyalar-ishlatilishi-izlash-shart-emas-3/
@redfoxuz / #uxui / #shogird
UX/UI dizayn sohasi bo'yicha shogird olamiz.
• Agarda siz UX/UI dizayn sohasiga qiziqsangiz.
• 09:00 dan 20:00gacha ishlashga tayyor bo’lsangiz.
• UX/UI sohasini real proektlar ustida o’rganishga ishtiyoqingiz baland bo’lsa bu imkoniyat siz uchun.
Ro'yxatdan o'ting: @Janibekmaxatov
+99899 8070116
Dasturchi faqat kod yozmaydi. Yoki dizaynerdan kutuvlar…
Marketing, turli tuman kurslar oqibatimi, nima sabab — bilmadim-u, “dasturchi faqat kod yozadi” degan noto‘g‘ri qarash shakllanib qolgan. Shu boisdan ushbu maqolada dasturchi va dizayner vazifalari nimalardan iborat ekanligini bilan yoritib o'tdim.
👉🏽 Maqolani 2 daqiqada o'qish
P.S. Ushbu maqolani o'zimizni dasturchilarga yuboramiz)
@suxrobblog | #dasturchi#uxui
📱Strong Junior UX/UI Designer qidiryapman
Proyektbay ishlash uchun kuchli junior dizayner kerak.
Talablar:
— Figma’ni yaxshi bilishi (auto layout, components, variants);
— Oz-moz design system haqida tushunchasi bo'lishi;
— Deadline’ga mas’uliyat bilan yondashishi;
— Feedback’ni og‘riqsiz qabul qilib, tez implement qila olishi.
Muhim:
— Kuniga / haftasiga necha soat ajrata olishingizni yozing;
— Real ishlagan loyihalaringizni (portfolio / Behance / link) yuboring;
— Faqat o‘zingiz qilgan ishlar bo‘lsin.
Taklif qilaman:
— O‘zbekiston va xalqaro proyektlarda ishlash imkoniyati;
— Real product tajribasi va kuchli feedback;
— Rivojlanish uchun kurslar va mentorlik dasturlari;
Ish formati: proyektbay (onlayn)
To‘lov: skill va tajribaga qarab kelishiladi.
O‘zingiz haqingizda qisqacha ma’lumot, portfolio havolasi, kutuvlaringiz hamda texnik intervyuga qaysi vaqtda tayyor ekanligingizni yozib yuboring.
Bog'lanish: @Tasir_menejer
P.S. Feedback ko‘tara olmaydigan dizaynerlar murojaat qilib o‘tirmasa ham bo‘ladi.
#vakansiya#uxui#dizayn
📱 Middle / Senior UX/UI Designer kerak
Proyektbay formatda kuchli Middle va Senior darajadagi dizaynerlarni ham ko‘rib chiqaman.
Iltimos, ortiqcha vaqtni oldini olgan holda, e’lon bilan to‘liq tanishib chiqib, shundan keyin murojaat qiling.
Talablar:
— Figma’ni professional darajada bilish (components architecture, variants, prototyping, design system)
— User flow, wireframe va IA (Information Architecture) tuza olish
— Miro va ClickUpda tajriba
— Design system ishlab chiqish tajribasi
— HTML / CSS’ni tushunish
— Material Design va Human Interface Guideline’lardan xabardor bo‘lish
— Frontend va backend jamoalari bilan samarali hamkorlik qila olish
— Texnik topshiriqni tez va aniq tushunib olish
— Product thinking va UX mantiq
— Mustaqil qaror qabul qila olish
— Deadline va javobgarlik
— Feedback’ni konstruktiv qabul qilish va himoyalay olish
Murojaat qilayotganda quyidagilarni yozib qoldiring:
— O‘zingiz haqingizda qisqacha ma’lumot (faqat rezyume emas)
— Darajangiz (qayerda ishlashingiz bilan)
— Portfolio havolalari (Behance + Figma link ham)
— Qancha vaqt ajrata olishingiz
— Kutuvingiz (rate yoki loyiha bo‘yicha)
— Daraja bo'yicha test topshiriga tayyorlingiz
Ish formati: proyektbay
To‘lov: skill va tajribaga qarab kelishiladi
⭐️ Ma'qul kelgan nomzod O‘zbekiston va xalqaro proyektlarda ishlash imkoniyati mavjud.
Aloqa: @Tasir_menejer
#uxui#middle#senyor
✅My school student ilovasi ham yangilandi
Yangilangan ilova app store va play marketga kecha chiqqan edi. Yangi ilovada my school brendining yangi logotipini koʻrishimiz mumkin.
Ilova dizayni (toʻliq UX/UI case study) va app store screen dizaynlari men tomonimdan loyihalashtirilgan. Tez orada ilova dizaynidan ham bir shingil sizlarga ulashaman.
Ancha vaqtdan beri ishlarimni ommaga chiqarmay qoʻygandim. Tez orada Behanceda 4-5 ta keysimni ixchamgina qilib, chiqarib yuborishim ham, mumkin reaksiyalar bilan qoʻllab tursangiz, tezroq harakatni boshlayman.)
@xurramovblog
#keyslarimdan#myschool#uxui
Tasir Academydagi shaxsiy UX/UI dizayn kurslarim borasida
Xabaringiz bo'lsa kerak, akademiyada ham, akademiyadan tashqari ham shogird qabul qilishni vaqtincha toʻxtatgan edim, ammo ko'pchilik menga kurs bo'yicha yozishdi. "Akademiya bo'lgandan keyin kurs ham o'tish kerakda" degan ijobiy fikrlar bilan)
Shu kabi sabablar bilan, yaqin orada UX/UI dizayn bo'yicha shogirdlik dasturimga yangidan start beraman. Shogirdlik dasturiga koʻra, kurs oʻquvchilariga Figmada Advanced darajada ishlash boʻyicha hozirda oʻzim tomonimdan yozib borilayotgan video darslar ham taqdim etaman.
Figma bo'yicha yozayotgan videodarslarga qisqacha to'xtalib ketsam, "buni bossangiz, bu chiqadi" deb dehqoncha usulda, xalq tushunadigan tilda tushuntirib, yozib boryapman. Eskitdan qolgan terminlar bilan, o'rganuvchilarni bezor qilish niyatim yo'q.
Doimgidek, shogirdlik dasturiga sanoqli o'rganuvchilar uchun joylar mavjud. So'rovnoma to'ldirib, hozirdan joyingizni band qilib qo'yishingiz mumkin. Bog'lanish va ma'lumot uchun »
@suxrobblog
» #tasiracademy#uxui#figma#kurs
Начнем с рассмотра главной страницы сайта asb-video.ru
Логотип компании, кнопка вызова по телефону, оператор в телеграме и кнопка меню расположились в верхней части экрана мобильного устройства.
Далее нас встречает баннер, который в будущем может превратиться в слайдер акций, скидок или нового проекта.
Ниже нас будут ждать типовые решения для дома, офиса, склада, магазина или квартиры, которые
ООО «АСБ» может предложить для вашего видеонаблюдения.
После типовых решений нас ждёт уникальное целевое действие.
Интерактивным интерфейсом мы заинтересуем посетителей сайта воспользоваться калькулятором подсчёта сметы персональной
системы видеонаблюдения.
Для этого необходимо ввести два значения с помощью клавиатуры — количество помещений и общую площать вашего объекта.
Я придумал систему просчёта количества необходимого оборудования для не сложной среднестатистической системы.
По кнопке ниже калькулятора мы перейдём к просчитанной смете
и сможем ознакомиться
с составом автоматически подобранного решения.
Внизу экрана мобильного устройства вы всегда сможете увидеть кнопки главной, каталога, калькулятора, контактов и кабинета технической поддержки.
В следующем посте мы рассмотрим меню сайта.
#asb#mobile#uxui#design#asbvideoru#homepage
www.asb-video.ru