Можно ли в 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
Вакансия
Международная компания по управлению фондами прямых инвестиций в поисках Compliance Officer/MLRO
Requirements to the candidate:
Bachelor Degree in Economics, Finance or Law;
Experience in a similar field (compliance, AML) of at least 1-2 years;
English at level B1-B2 (minimum intermediate);
Compliance with the requirements of the AIFC regulatory structures for persons holding the position of Compliance Officer/MLRO.
8 775 822 78 35
#vacancy#вакансия#compliancehub
Салем, коллеги!
Присоединяйтесь к нашему опросу 🤝
Цифровая гигиена звучит странно, но благодаря соблюдению простых правил мы можем уберечь себя от неприятных последствий. Расплывчатое описание 😄 Лучше один раз увидеть, поэтому предлагаем вам посмотреть наш ролик о безопасности личных данных
#compliance#compliancehub#security
Салем, коллеги!
Встречайте свежий выпуск комплаенс дайджеста. Тестируем новый формат, будем рады вашей обратной связи!
Благодарим всех коллег кто участвовал в подготовке 👏
#compliance#digest#compliancehub
𝐂𝐨𝐦𝐩𝐥𝐢𝐚𝐧𝐜𝐞 𝐑𝐞𝐦𝐢𝐧𝐝𝐞𝐫
Для платежных организаций
В соответствии с Требованиями к Правилам внутреннего контроля в целях ПОД/ФТ/ФРОМУ для платежных организаций, платежные организации на ежегодной основе должны осуществлять оценку степени подверженности услуг (продуктов) организации рискам ОД/ФТ/ФРОМУ с учетом отчета оценки рисков ОД/ФТ/ФРОМУ.
Итоги (результаты) ежегодной оценки документируются в соответствии с внутренними документами и процедурами платежной организации, о которых уведомляется уполномоченный орган по финансовому мониторингу и уполномоченный орган не позднее первого квартала, следующего за календарным годом.
Учитывая вышесказанное, не забудьте направить данную отчетность в срок.
#compliancereminder от Compliance Hub призван повысить осведомленность комьюнити о требованиях, затрагивающих вопросы комплаенс и ПОД/ФТ, а также положительно сказаться на формировании комплаенс культуры
#compliancehub#amlcft#compliance
𝐂𝐨𝐦𝐩𝐥𝐢𝐚𝐧𝐜𝐞 𝐑𝐞𝐦𝐢𝐧𝐝𝐞𝐫
Публикуем наш очередной Compliance Reminder для Комплаенс и AML офицеров.
Для субъектов финансового мониторинга - участников МФЦА
В соответствии с AIFC Anti-Money Laundering, Counter-Terrorist Financing and Sanctions Rules, субъектам финансового мониторинга, работающим на МФЦА необходимо ежегодно заполнять и направлять местному регулятору Annual AML Return Form, которая представляет собой описание особенностей системы ПОД/ФТ в компании и некоторых других данных.
Предоставляется данная форма ежегодно, в течение двух месяцев после окончания года, то есть до конца февраля.
Учитывая вышесказанное, не забудьте направить данную отчетность в срок.
#compliancereminder от Compliance Hub призван повысить осведомленность комьюнити о требованиях, затрагивающих вопросы комплаенс и ПОД/ФТ, а также положительно сказаться на формировании комплаенс культуры
#compliancehub#amlcft#compliance
𝐂𝐨𝐦𝐩𝐥𝐢𝐚𝐧𝐜𝐞 𝐑𝐞𝐦𝐢𝐧𝐝𝐞𝐫
Небольшое напоминание для участников рынка ценных бумаг и МФО.
Постановлением Правления Агентства Республики Казахстан по регулированию и развитию финансового рынка от 29 июня 2020 года № 67 "Об утверждении форм отчетности о соблюдении требований законодательства Республики Казахстан о противодействии легализации (отмыванию) доходов, полученных преступным путем, и финансированию терроризма, предоставляемой профессиональными участниками рынка ценных бумаг (за исключением банков второго уровня), организациями, осуществляющими микрофинансовую деятельность" утверждены формы отчета о соблюдении требований законодательства Республики Казахстан о противодействии легализации (отмыванию) доходов, полученных преступным путем, и финансированию терроризма (ПОД/ФТ) для:
– профессиональных участников рынка ценных бумаг (за исключением банков второго уровня);
– организаций, осуществляющих микрофинансовую деятельность.
Данный отчет должен содержать описание системы ПОД/ФТ организации, в том числе, ее программ:
– идентификации клиента;
– управления рисками ОД/ФТ;
– подготовки и обучения работников;
– мониторинга и изучения операций.
Согласно требованиям указанного постановления, профессиональным участниками рынка ценных бумаг и организациям, осуществляющим микрофинансовую деятельность, необходимо на полугодовой основе направлять заполненные формы в Агентство Республики Казахстан по регулированию и развитию финансового рынка.
Срок предоставления - не позднее 15 числа месяце, следующего за отчетным полугодием.
Учитывая вышесказанное, не забудьте направить следующую отчетность не позднее 15 января.
#compliancereminder от Compliance Hub Community призван повысить осведомленность комьюнити о требованиях, затрагивающих вопросы комплаенс и ПОД/ФТ, а также положительно сказаться на формировании комплаенс культуры
#compliancehub#amlcft#compliance
Друзья, мы любим юмор, и стараемся говорить о важных и сложных вещах просто и понятно. Надеемся вам понравится наш ролик против коррупции.
Adam bol, Adal bol🚀
В ролях участники нашего проф.комьюнити:
Честный чиновник - Ермек Калиев.
Руки взяточницы - Малика Бульдекбаева.
Фея реалистичного реквизита - Аида Шерьязданова.
Благодарим за продакшн Казыбек Байдулла.
#compliancehub#антикор#юмор#нет_коррупции
𝐂𝐨𝐦𝐩𝐥𝐢𝐚𝐧𝐜𝐞 𝐑𝐞𝐦𝐢𝐧𝐝𝐞𝐫
Напоминание для коллег из платежных организаций.
В соответствии с Правилами представления сведений о платежных услугах, утвержденными Постановлением Правления Национального Банка Республики Казахстан от 31 августа 2016 года № 213, платежные организации, прошедшие учетную регистрацию в Национальном Банке, должны представлять регулятору форму "Сведения по принятым мерам, направленным на противодействие легализации (отмыванию) доходов, полученных преступным путем, и финансированию терроризма".
Данная форма представляется на полугодовой основе, не позднее десятого (включительно) числа месяца, следующего за отчетным полугодием.
Пояснение к заполнению формы отражены в приложении 16 к указанным правилам.
#compliancereminder от Compliance Hub призван повысить осведомленность комьюнити о требованиях, затрагивающих вопросы комплаенс и ПОД/ФТ, а также положительно сказаться на формировании комплаенс культуры
#compliancehub#compliance#amlcft#moneylaundering
16 марта состоится уникальное и вдохновляющее событие в честь Международного Женского Дня по теме: "Impact the Future", организованное в коллаборации ведущих IT-сообществ, где мы являемся со-организаторами.
Наша инициатива направлена на поддержку и продвижение женщин в сфере информационных технологий и комплаенс.
Мы верим в силу объединения и стремимся создать более инклюзивное, разнообразное и вдохновляющее пространство в области IT и комплаенс, а также вдохновлять для достижения успеха в карьере.
На мероприятии вы сможете познакомиться с вдохновляющими историями женщин-лидеров, узнать, что происходит в мире комплаенс, ИТ и AI технологий, а также задать вопросы и пообщаться на актуальные темы.
Дата: 16.03.2024 г.
Время: 9:30-16:00
Место: Almaty Management University
Участие: бесплатно
Регистрация по ссылке
#compliancehub#wtl#womentechleaders #wtm#googlekz #womenpower
В прошедшие выходные, в рамках программы “Таза Қазақстан” МФЦА было организовано мероприятие по очистке территории в юрисдикции финансового центра Астана.
В мероприятии приняли участие Управляющий Центра, а также Комитет МФЦА по регулированию финансовых услуг (AFSA).
Комплаенс-офицеры и MLRO компаний - участниц МФЦА, являющиеся членами Compliance Hub также поддержали данную инициативу.
#ESG#AIFC#AFSA#ТазаҚазақстан#Compliance#ComplianceHub