Ten-thousandary numeric system — base-10000 number notation with 4-digit grouping
Project description
ttenary — десятитысячно-единичная система счисления
TTA (Ten-Thousandary) — компактная запись больших чисел с группировкой по 4 десятичных разряда. Каждая группа из 4 цифр — один разряд в системе с основанием 10 000.
Формула
TTA(L₁.L₂.L₃:R₁.R₂.R₃) =
(L₁×10000+R₁) × 100 000 000² +
(L₂×10000+R₂) × 100 000 000 +
(L₃×10000+R₃)
:разделяет левую и правую половины.разделяет 4-значные группы внутри половины- Группы дополняются нулями слева, если их количество не совпадает
- Каждая пара (левый × 10000 + правый) даёт 8-значный разряд
Примеры
| TTA | Десятичное |
|---|---|
0:0005 |
5 |
1:0000 |
10 000 |
0:0012 |
12 |
0.6744.0955:1844.0737.1616 |
2⁶⁴ = 18 446 744 073 709 551 616 |
0023.4790.8754:2472.1000.4731 |
2 347 908 754 247 210 004 731 |
Установка
pip install ttenary
Использование (Python)
from ttenary import TTA
# Парсинг TTA-строки
n = TTA("0:0005")
print(n.to_int()) # 5
# Форматирование числа в TTA
print(TTA(2**64)) # 0.6744.0955:1844.0737.1616
# Арифметика
a = TTA("0:0003")
b = TTA("0:0007")
print(a + b) # 0:0010
# Сравнение с int
print(TTA("0:0005") == 5) # True
print(TTA("1:0000") > 99) # True
# Большие числа
print(TTA(2**128 - 1))
# 340.6692.4634.4607.6821:2823.0938.6337.4317.1455
Использование (CLI)
# TTA → десятичное
tta "0:0005"
# → 5
# Десятичное → TTA
tta 10000
# → 1:0000
# 2^64
tta 18446744073709551616
# → 0.6744.0955:1844.0737.1616
# С разбором групп (--explain)
tta --explain "0.6744.0955:1844.0737.1616"
Use-cases
- Коды и артикулы — читаемая альтернатива hex-нотации для IMEI, UUID, серийных номеров
- Большие числа — наглядная запись 64/128-битных значений без потери точности (нет float)
- Финтех — хранение и передача больших десятичных чисел с фиксированной точностью
- Нотация для документов — договоры, ИНН, счета с визуальной группировкой
Совместимость
- Python ≥ 3.10
- Нет зависимостей — только стандартная библиотека
Лицензия
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ttenary-0.1.0.tar.gz
(6.1 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ttenary-0.1.0.tar.gz.
File metadata
- Download URL: ttenary-0.1.0.tar.gz
- Upload date:
- Size: 6.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bea3403d31ae86be2e9e6372d9d76eb291c30de633d21c78be078e33676ff202
|
|
| MD5 |
219b5fbcc97ef7cf70e21c1e3820d3b7
|
|
| BLAKE2b-256 |
2ce02b883cf06f20cac3ac37755acb0d236f0c45fc0e30271776af2509db0a08
|
File details
Details for the file ttenary-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ttenary-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7fec345ecb7655a4097ab71929ec5e5545c1df22c4e99c21747ddf80be1b1709
|
|
| MD5 |
cd3b896cf188d6270f6ae7212e5fe7b1
|
|
| BLAKE2b-256 |
436be5d2d69de457f14e6ee6269c3fcb0bd6d1998793be4b0726d3573465bec8
|