Можно преобразовать строку в 32-разрядное целое число со знаком с эти int
функция:
str = "1234"
i = int(str) // i is a 32-bit integer
, Если строка не представляет целое число, Вы доберетесь ValueError
исключение. Обратите внимание, однако, что, если строка действительно представляет целое число, но что целое число не вписывается в 32-разрядный интервал со знаком, тогда Вы на самом деле получите объект типа long
вместо этого.
можно тогда преобразовать его в другие ширины и signednesses с некоторой простой математикой:
s8 = (i + 2**7) % 2**8 - 2**7 // convert to signed 8-bit
u8 = i % 2**8 // convert to unsigned 8-bit
s16 = (i + 2**15) % 2**16 - 2**15 // convert to signed 16-bit
u16 = i % 2**16 // convert to unsigned 16-bit
s32 = (i + 2**31) % 2**32 - 2**31 // convert to signed 32-bit
u32 = i % 2**32 // convert to unsigned 32-bit
s64 = (i + 2**63) % 2**64 - 2**63 // convert to signed 64-bit
u64 = i % 2**64 // convert to unsigned 64-bit
можно преобразовать строки в плавающую точку с эти float
функция:
f = float("3.14159")
плавания Python - то, что другие языки называют double
, т.е. они - 64 бита. В Python нет никаких 32-разрядных плаваний.
Следующие типы - по большей части - не существуют в Python во-первых. В Python строки преобразовываются в ints, longs или плавания, потому что это - все, существует.
Вы просите преобразования, которые не относятся к Python во-первых. Вот список типов, которые Вы попросили и их эквивалентный Python.
неподписанный и подписал интервал 64 бита, длинный
двойной, плавание
, я не знаю, какой следующее, таким образом, я не знаю эквивалентный Python.
у Вас уже есть все преобразования, которые имеют значение: int()
, long()
и float()
.
Python только имеет сингл int
тип. Для преобразования строки в int
используйте int()
как это:
>>> str = '123'
>>> num = int(str)
>>> num
123
Редактирование: Также для преобразования в плавание используйте float()
тем же самым способом.
Я не думаю, что этому можно обязательно ответить хорошо без большей информации. Как другие сказали, существует только интервал и жаждет целых чисел в Python - язык не придерживается разрядной ширины и архетипов со знаком языков программирования низшего уровня.
, Если Вы действуете полностью в рамках Python, тогда Вы, вероятно, задаете неправильный вопрос. Там вероятно лучший способ сделать то, в чем Вы нуждаетесь.
, Если Вы взаимодействуете с, например, C код, или по сети, тогда там , способы сделать это, и похоже, что ответ на Вашу предыдущую регистрацию касался той авеню довольно ловко.