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

Резултати

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

Пребарај: #wireguard

当前筛选 #wireguard清除筛选
机场鉴赏 _(:з)∠)_

@AirportAnalysis · Post #349 · 24.08.2022 г., 03:36

#Glados 机场协议: #Trojan#Vmess#Wireguard 有无审计: 有,屏蔽轮子等大部分具有政治色彩的网站。 机场套餐: https://t.me/AirportRoster/16 描述: 一个很神奇的机场,经常送30天Basic套餐的抵扣码,提供edu优惠,免费使用一年。pro套餐提供 #Wireguard 类型节点

Libreware

@libreware · Post #1429 · 06.03.2025 г., 22:42

A post from the developer of #WireGuard on the severe #security flaws and lack of trustworthiness of #FDroid: https://bsky.app/profile/grapheneos.org/post/3lgq7wqwzpk26 The Bluesky link has GrapheneOS posts explaining https://gitlab.com/fdroid/fdroiddata/-/issues/3110#note_1613430404 Stuff here but not to the point like the Bluesky link https://discuss.grapheneos.org/d/18731-f-droid-vulnerability-allows-bypassing-certificate-pinning/

GitHub Trends

@githubtrending · Post #14902 · 03.07.2025 г., 00:00

#go#tailscale#tailscale_control_server#tailscale_server#wireguard Headscale is an open-source, self-hosted alternative to the Tailscale control server, letting you create your own private VPN network using Wireguard technology. It supports key Tailscale features like node registration, DNS, file sharing (Taildrop), access control lists (ACLs), and more, making it ideal for personal or small group use. By running Headscale yourself, you gain full control over your network without relying on Tailscale’s servers, enhancing privacy and customization. You can manage access precisely with ACLs, tag devices for group policies, and use modern VPN benefits like NAT traversal and secure connections between your devices[1][3][5]. This helps you securely connect and control your devices in a private network tailored to your needs. https://github.com/juanfont/headscale

Cool Scripts

@cool_scripts · Post #843 · 08.06.2025 г., 01:52

🔗Sub-Store 中各种 WireGuard 输入/输出格式的说明 🆕 更新了部分格式的示例 但是具体实操还是以相关的规范为准 ⚠ 不要使用 Shadowrocket 来导出 URI 然后作为输入导入。这样导出的 WireGuard URI 不是标准的 URI 😭原消息 🤭Sub-Store 合集 🥰#Sub-Store #SubStore#节点#订阅#本地节点#本地订阅#示例#WireGuard

GitHub Trends

@githubtrending · Post #14789 · 05.06.2025 г., 11:30

#go#golang#mesh#mesh_networks#nat_traversal#netbird#vpn#wireguard#wireguard_vpn#wiretrustee#zero_trust_network_access NetBird lets you quickly set up a secure private network for your organization or home without needing to configure complex firewall rules, open ports, or manage VPN gateways. It uses direct peer-to-peer connections based on WireGuard, so your devices connect to each other securely and efficiently, bypassing the need for a central server. You get strong security with features like access control, activity logging, and support for single sign-on, all managed from a simple web interface. This means you can connect and protect your devices anywhere, with minimal setup and maintenance, making remote access and network management much easier[2][1][5]. https://github.com/netbirdio/netbird

12
ПретходнаСтраница 1 од 2Следна