Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отрицательные целые числа и hexadecimal format. 
V
    Опции темы
delatNEX
Дата 5.9.2006, 09:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 5.9.2006

Репутация: 1
Всего: 1



Каким образом в питоне можно вывести  отрицат. целое число в 16-ном виде?

Например:
Код

a=23
b=-23
print hex(a),hex(b)


Вывод
>>>0x17 -0x17

Неужели надо преобразовывать самому? 
Код

c=256+b
print hex(c)


>>> 0xe9

Это сообщение отредактировал(а) Cr@$h - 5.9.2006, 09:38
PM MAIL   Вверх
Cr@$h
Дата 5.9.2006, 09:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Исследователь
***


Профиль
Группа: Участник Клуба
Сообщений: 1693
Регистрация: 3.4.2005
Где: Санкт-Петербург, Россия

Репутация: 1
Всего: 41




M
Cr@$h
Приветствую delatNEX, нового участника форума!
Не забывай нажимать на кнопку Код в форме ответа при помещении исходных кодов Python. Плюс выбирай из списка другие языки. Обрати внимание на шапку форума. Желаю успехов.


PM MAIL ICQ   Вверх
albertn
Дата 5.9.2006, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 368
Регистрация: 17.7.2006
Где: г. Ставрополь

Репутация: 30
Всего: 34



Скорее всего у тебя не получится вывести отрицательное чилсо в шеснадцатеричном виде именно в том виде, котором ты хочешь, ибо формат хранения этих чисел у питона слегка отличается от класической
На сколько я знаю, у питона нет ограничений на размер целых чисел, а если так, то скорее всего знак этого числа хранится не в дополнительном коде, а занимает один дополнительный бит (как у чисел  с плавающей точкой).
Код

>>> z = -2**1000
>>> z
-10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652624386837205668069376L
>>> hex(z)
'-0x10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000L'

А для того, чтобы вывести число в дополнительном коде, необходимо заранее определенное количество занимаемых байт, а дальше можно по простой формуле:
Код

>>> r = 4
>>> x = -123
>>> x>=0 and hex(x) or hex(256**r+x)
'0xFFFFFF85L'

PM WWW ICQ   Вверх
delatNEX
Дата 5.9.2006, 11:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 5.9.2006

Репутация: 1
Всего: 1



Cr@$h, спасибо за указания и пожелания. smile
Немного не понял о других языках. Как в других я хоть смутно, но представляю, интересно как это сделать в питоне.

albertn, благодарю.
В книге "Язык программирования Python" (авторы: Г. Россум, Ф.Л.Дж. Дрейк, Д.С. Откидач) встретил предложение : "Знак ‘-’ или ‘+’ не является частью литерала, а лишь унарным оператором, применяемым к объекту после его создания."
Наверное копать надо сюда. 
PM MAIL   Вверх
albertn
Дата 5.9.2006, 11:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 368
Регистрация: 17.7.2006
Где: г. Ставрополь

Репутация: 30
Всего: 34



Цитата(delatNEX @  5.9.2006,  11:12 Найти цитируемый пост)
В книге "Язык программирования Python" (авторы: Г. Россум, Ф.Л.Дж. Дрейк, Д.С. Откидач) встретил предложение : "Знак ‘-’ или ‘+’ не является частью литерала, а лишь унарным оператором, применяемым к объекту после его создания."
Наверное копать надо сюда.
Так я же примерно про это и говорил.

Статья про представление чисел с первого попавшегося мне сайта.

Цитата(delatNEX @  5.9.2006,  11:12 Найти цитируемый пост)
Как в других я хоть смутно, но представляю, интересно как это сделать в питоне.

Так собсно я то примерчик привел, или тебе не это нужно?
PM WWW ICQ   Вверх
delatNEX
Дата 5.9.2006, 12:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 5.9.2006

Репутация: 1
Всего: 1



smile
Цитата(delatNEX @  5.9.2006,  11:12 Найти цитируемый пост)
albertn, благодарю.


PM MAIL   Вверх
pythonwin
Дата 5.9.2006, 12:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: 14
Всего: 36



albertn, +1
PM WWW GTalk Jabber   Вверх
Cr@$h
Дата 5.9.2006, 12:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Исследователь
***


Профиль
Группа: Участник Клуба
Сообщений: 1693
Регистрация: 3.4.2005
Где: Санкт-Петербург, Россия

Репутация: 1
Всего: 41



Цитата(delatNEX @  5.9.2006,  12:12 Найти цитируемый пост)
Cr@$h, спасибо за указания и пожелания. 

 smile 
Цитата(delatNEX @  5.9.2006,  12:12 Найти цитируемый пост)
Немного не понял о других языках. Как в других я хоть смутно, но представляю, интересно как это сделать в питоне.

Подсветка синтаксиса работает для многих других языков. Если понадобится -- смело выбирай из списка Код в форме ответа.
Цитата(delatNEX @  5.9.2006,  13:12 Найти цитируемый пост)

albertn, благодарю.


M
Cr@$h
albertn, ++ за помощь вновь пришедшему. Оп, увидел после написания поста. pythonwin опередил. ;-)


Это сообщение отредактировал(а) Cr@$h - 5.9.2006, 12:43
PM MAIL ICQ   Вверх
albertn
Дата 5.9.2006, 12:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 368
Регистрация: 17.7.2006
Где: г. Ставрополь

Репутация: 30
Всего: 34



pythonwin и Cr@$h опять хором smile но все-равно спасибо.
PM WWW ICQ   Вверх
pythonwin
Дата 5.9.2006, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: 14
Всего: 36



Пожалуйста!
PM WWW GTalk Jabber   Вверх
Cr@$h
Дата 5.9.2006, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Исследователь
***


Профиль
Группа: Участник Клуба
Сообщений: 1693
Регистрация: 3.4.2005
Где: Санкт-Петербург, Россия

Репутация: 1
Всего: 41



Цитата(albertn @  5.9.2006,  13:45 Найти цитируемый пост)
pythonwin и Cr@$h опять хором  но все-равно спасибо. 

Нет, в этот раз я успел среагировать. Когда посто написал свой, от python уже появился перед моим. Хватит и одного тебе в этот раз  smile 
PM MAIL ICQ   Вверх
albertn
Дата 5.9.2006, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 368
Регистрация: 17.7.2006
Где: г. Ставрополь

Репутация: 30
Всего: 34



Цитата(Cr@$h @ 5.9.2006,  13:06)
Нет, в этот раз я успел среагировать. Когда посто написал свой, от python уже появился перед моим. Хватит и одного тебе в этот раз  smile

Я заметил. Меня просто последнее время начинает радовать активность форума, а точнее скорость ответов.
PM WWW ICQ   Вверх
Cr@$h
Дата 5.9.2006, 13:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Исследователь
***


Профиль
Группа: Участник Клуба
Сообщений: 1693
Регистрация: 3.4.2005
Где: Санкт-Петербург, Россия

Репутация: 1
Всего: 41



Цитата(albertn @  5.9.2006,  14:13 Найти цитируемый пост)
Меня просто последнее время начинает радовать активность форума, а точнее скорость ответов. 

Да, активность резко возросла. Появляются новые участники, а значит форум растёт.
PM MAIL ICQ   Вверх
pythonwin
Дата 5.9.2006, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник
Сообщений: 2529
Регистрация: 18.4.2006
Где: за компом

Репутация: 14
Всего: 36



Цитата(Cr@$h @  5.9.2006,  20:32 Найти цитируемый пост)
Да, активность резко возросла. Появляются новые участники, а значит форум растёт. 

согласен, хотя последние дня три-четыре активность снизилась...
PM WWW GTalk Jabber   Вверх
albertn
Дата 5.9.2006, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 368
Регистрация: 17.7.2006
Где: г. Ставрополь

Репутация: 30
Всего: 34



Цитата(pythonwin @ 5.9.2006,  13:39)
Цитата(Cr@$h @  5.9.2006,  20:32 Найти цитируемый пост)
Да, активность резко возросла. Появляются новые участники, а значит форум растёт. 

согласен, хотя последние дня три-четыре активность снизилась...

Лето закончилось, и началась учеба  smile 
PM WWW ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Python: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0877 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.