Каков 5-значный буквенно-цифровой идентификатор в URL-адресе reddit?

Что такое 7n5lu в reddit-URL http://www.reddit.com/r/reddit.com/comments/7n5lu/man_can_fly_if_you_watch_one_video_in_2

как он сгенерирован?

update: @Gerald, Спасибо за код. Сначала я думал, что это некоторая запутывание id. Но он просто выполняет преобразование из целого в более компактное представление. Я думаю, почему это делается? почему бы не использовать оригинальное целое!

 >>> to36(4000) '334' >>> to36(4001) '335' 

3 Solutions collect form web for “Каков 5-значный буквенно-цифровой идентификатор в URL-адресе reddit?”

Исходный код reddit доступен ! Вот что я нашел для создания этой строки:

 def to_base(q, alphabet): if q < 0: raise ValueError, "must supply a positive integer" l = len(alphabet) converted = [] while q != 0: q, r = divmod(q, l) converted.insert(0, alphabet[r]) return "".join(converted) or '0' def to36(q): return to_base(q, '0123456789abcdefghijklmnopqrstuvwxyz') 

и в другом месте, под классом «Ссылка»:

 @property def _id36(self): return to36(self._id) 

Это похоже на уникальный идентификатор потока. Скорее всего, он используется для поиска потока в базе данных.

Маленькое замечание.

Этого недостаточно для этого примера, но обычно добавляется к спискам

 a = [] for i in range(NNN): a.append(i) a.reverse() 

действительно более эффективный, чем вставка на голову.

 a = [] for i in range(NNN): a.insert(0,i) 

,

Interesting Posts

Как градиент прошел через tf.py_func

Я ожидаю «Правда», но получаю «Нет»

Вращение в pygame

Старое хэширование питона выполняется слева направо – почему это плохо?

Как написать оболочку над функциями и функциями-членами, которые выполняют некоторый код до и после завернутой функции?

Неудачная агрегация на торнадо / двигателе: дал неизвестный объект MotorAggregationCursor

Добавьте динамическую форму в набор форм django, используя javascript правильно

Смутно с ответом о лучшем / худшем случае для функции Python

Нелинейная оптимизация с помощью Python

Как написать пользовательский Gtk.CellRenderer в python и GTK 3?

Почему существует предел длины для eval python?

Типы параметров функции в Python

CSV new-line символ, отображаемый в некотируемой ошибке поля

Исходные значения в предыдущей строке с картой или применить

Сортировка списка по количеству вхождений элементов в списке

Python - лучший язык программирования в мире.