Можно ли сохранить кнопки и вид изображения выровненными для каждого размера экрана?

Я надеюсь, что следующий фрагмент может помочь.

def num2sym(num, sym, join_symbol=''):
    if num == 0:
        return sym[0]
    if num < 0 or type(num) not in (int, long):
        raise ValueError('num must be positive integer')

    l = len(sym)  # target number base
    r = []
    div = num
    while div != 0: # base conversion
        div, mod = divmod(div, l)
        r.append(sym[mod])

    return join_symbol.join([x for x in reversed(r)])

Использование для вашего случая:

number = 367891
alphabet = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
print num2sym(number, alphabet)  # will print '1xHJ'

Очевидно, вы можете указать другой алфавит, состоящий из меньшего или большего количества символов, затем он преобразует ваш номер в меньшая или большая база. Например, при предоставлении '01' в качестве алфавита выводится строка, представляющая входной номер как двоичный.

Вы можете сначала перетасовать алфавит, чтобы иметь уникальное представление чисел. Это может быть полезно, если вы используете службу сокращения URL-адресов.

0
задан Vitor Dib Martinho 31 March 2019 в 05:12
поделиться

1 ответ

Вы можете попробовать эту замечательную библиотеку. https://github.com/intuit/sdp

. На самом деле это новая единица масштаба, которая sdp (масштабируемая дп ).

0
ответ дан Amine 31 March 2019 в 05:12
поделиться
Другие вопросы по тегам:

Похожие вопросы: