Этот проект представляет собой оболочку libbase64.
Его цель — обеспечить быструю реализацию base64 для кодирования/декодирования base64.
pip установить pybase64
pybase64
использует тот же API, что и «современный интерфейс» Python base64 (представленный в Python 2.4), для простой интеграции.
Чтобы получить максимально быстрое декодирование, рекомендуется использовать pybase64.b64decode
и, когда это возможно, validate=True
.
import pybase64
print ( pybase64 . b64encode ( b'>>>foo???' , altchars = '_:' ))
# b'Pj4_Zm9vPz8:'
print ( pybase64 . b64decode ( b'Pj4_Zm9vPz8:' , altchars = '_:' , validate = True ))
# b'>>>foo???'
# Standard encoding helpers
print ( pybase64 . standard_b64encode ( b'>>>foo???' ))
# b'Pj4+Zm9vPz8/'
print ( pybase64 . standard_b64decode ( b'Pj4+Zm9vPz8/' ))
# b'>>>foo???'
# URL safe encoding helpers
print ( pybase64 . urlsafe_b64encode ( b'>>>foo???' ))
# b'Pj4-Zm9vPz8_'
print ( pybase64 . urlsafe_b64decode ( b'Pj4-Zm9vPz8_' ))
# b'>>>foo???'
Также предоставляется инструмент командной строки. Он имеет подкоманды кодирования, декодирования и тестирования.
использование: pybase64 [-h] [-V] {benchmark,encode,decode} ... Инструмент командной строки pybase64. позиционные аргументы: {тест, кодирование, декодирование} инструмент помощи тест -h для использования закодировать -h для использования декодировать -h для использования необязательные аргументы: -h, --help показать это справочное сообщение и выйти -V, --version показать номер версии программы и выйти
Полная документация по прочтению документации.
Запуск Python 3.7.2, Apple LLVM версии 10.0.0 (clang-1000.11.45.5), Mac OS X 10.14.2 на процессоре Intel Core i7-4870HQ с частотой 2,50 ГГц.
pybase64 0.5.0 (активно расширение C — AVX2) скамейка: altchars=Нет, проверка=False pybase64._pybase64.encodebytes: 1734,776 МБ/с (13 271 472 байт -> 17 928 129 байт) pybase64._pybase64.b64encode: 4039,539 МБ/с (13 271 472 байт -> 17 695 296 байт) pybase64._pybase64.b64decode: 1854,423 МБ/с (17 695 296 байт -> 13 271 472 байт) base64.encodebytes: 78,352 МБ/с (13 271 472 байт -> 17 928 129 байт) base64.b64encode: 539,840 МБ/с (13 271 472 байт -> 17 695 296 байт) base64.b64decode: 287,826 МБ/с (17 695 296 байт -> 13 271 472 байт) скамейка: altchars=Нет, проверка=True pybase64._pybase64.b64encode: 4156,607 МБ/с (13 271 472 байт -> 17 695 296 байт) pybase64._pybase64.b64decode: 4107,997 МБ/с (17 695 296 байт -> 13 271 472 байт) base64.b64encode: 559,342 МБ/с (13 271 472 байт -> 17 695 296 байт) base64.b64decode: 143,674 МБ/с (17 695 296 байт -> 13 271 472 байт) скамейка: altchars=b'-_', validate=False pybase64._pybase64.b64encode: 2786,776 МБ/с (13 271 472 байт -> 17 695 296 байт) pybase64._pybase64.b64decode: 1124,136 МБ/с (17 695 296 байт -> 13 271 472 байт) base64.b64encode: 322,427 МБ/с (13 271 472 байт -> 17 695 296 байт) base64.b64decode: 205,195 МБ/с (17 695 296 байт -> 13 271 472 байт) скамейка: altchars=b'-_', validate=True pybase64._pybase64.b64encode: 2806,271 МБ/с (13 271 472 байт -> 17 695 296 байт) pybase64._pybase64.b64decode: 2740,456 МБ/с (17 695 296 байт -> 13 271 472 байт) base64.b64encode: 314,709 МБ/с (13 271 472 байт -> 17 695 296 байт) base64.b64decode: 121,803 МБ/с (17 695 296 байт -> 13 271 472 байт)
Добавлена документация
В основной скрипт добавлены подкоманды:
- помощь
- версия
- кодировать
- декодировать
- эталон