LINUX.ORG.RU

Python не могу получить верный результат((

 


1

1

Добрый день возникла токая проблема не могу получить правильный результат..

#!/usr/bin/python
# -*- coding: utf-8 -*-

hexs='ee'
print int(hexs, 16) # 238 (8 byte)
print ????????????? # -18 (1 byte)

# Первый ответ получается (238) 
# А как второй получит по заданию должен (-18)


Последнее исправление: BlackPhreaker (всего исправлений: 1)
Ответ на: комментарий от kachan

Вот в этом и загвоздка не знаю как получить -18 поэтому и написал print ????

BlackPhreaker
() автор топика
Ответ на: комментарий от Polarisru

Вот теперь вроде понял спасибо!!! А есть еще варианты как это можно осуществить подругому???

BlackPhreaker
() автор топика
>>> int.from_bytes(bytes.fromhex('ee'), 'little', signed=False)
238
>>> int.from_bytes(bytes.fromhex('ee'), 'little', signed=True)
-18
anonymous
()
Ответ на: комментарий от anonymous

это для третьего питона, если что.

hex2int = lambda h,s=False: int.from_bytes(bytes.fromhex(h), 'little', signed=s)

print(hex2int('ee'))        # 238
print(hex2int('ee', True))  # -18
anonymous
()
Ответ на: комментарий от anonymous

Огромное спасибо всем за участие все очень сильно помогли...

BlackPhreaker
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.