Найти - Пользователи
Полная версия: Как сложить 2 шестнадцатеричных числа?
Начало » Python для новичков » Как сложить 2 шестнадцатеричных числа?
1
protagonist113
Нужно посчитать хеш строки
Алгоритм:
Допустим есть строка: ‘0’
a=hex(ord('0')+1)=hex(48+1)=0x31
b=hex(ord('0'))=hex(48)=0x30

И из aи b надо получить hex чиcло вида 0x3031 и из него int("0x3031)=12337
Каким образом это сделать?
Soteric
домножить b на 0x100 и прибавить a
dimy44
res = lambda a: ((ord(a) + 1) << 8) + ord(a)
print res("0")
py.user.next
dimy44 числа перепутал

>>> s = '0'
>>> h = ord(s) * 0x100 + ord(s) + 1
>>> h
12337
>>>
dimy44
Точно. Исправляю свой пример:
res = lambda a: (ord(a) << 8) + ord(a) + 1
print res("0")
>>>
12337
>>>
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB