Я пытаюсь создать преобразование с плавающей запятой binary32 в десятичный преобразователь, который состоит из восьми бит для экспоненты и двадцать четыре бита для мантиссы. У меня есть exponent = []
и mantissa = []
. Если пользователь вводит 010000111111101101000000000000000
, я хочу индексировать от одного до восьми от value
до exponent
и индексировать от девяти до тридцати двух от value
до mantissa
. Я в настоящее время имею следующий спагетти код, чтобы сделать это:Как я могу расширить/добавить список с несколькими индексами из переменной?
print ("Welcome to August's floating point value to decimal converter!")
value = input("Please enter 32 bit floating value to convert.")
exponent = []
mantissa = []
exponent.append(value[1])
exponent.append(value[2])
exponent.append(value[3])
exponent.append(value[4])
exponent.append(value[5])
exponent.append(value[6])
exponent.append(value[7])
exponent.append(value[8])
print (exponent)
mantissa.append(value[9])
mantissa.append(value[10])
mantissa.append(value[11])
mantissa.append(value[12])
mantissa.append(value[13])
mantissa.append(value[14])
mantissa.append(value[15])
mantissa.append(value[16])
mantissa.append(value[17])
mantissa.append(value[18])
mantissa.append(value[19])
mantissa.append(value[20])
mantissa.append(value[21])
mantissa.append(value[22])
mantissa.append(value[23])
mantissa.append(value[24])
mantissa.append(value[25])
mantissa.append(value[26])
mantissa.append(value[27])
mantissa.append(value[28])
mantissa.append(value[29])
mantissa.append(value[30])
mantissa.append(value[31])
mantissa.append(value[32])
print (mantissa)
Таким образом, вместо добавления каждого индекса по отдельности мне было интересно, если есть способ, чтобы добавить их в список все в одной строке. Я попытался следующие extend
методы:
exponent.extend(value[1, 2, 3, 4, 5, 6, 7, 8])
и без запятых тоже
exponent.extend(value[1], value[2], value[3], value[4], value[5], value[6], value[7], value[8],)
который я тогда понял, extend
принимать только один аргумент.
exponent.extend(value[1-8])
которые, кажется, вычитали один и восемь.
Я пробовал exponent = {}
который я считаю верным? А затем попробовал exponent.update
, а затем несколько указателей с запятыми. Который тогда сказал мне, что поддерживает только один аргумент.
Любые другие предложения по добавлению нескольких индексов от value
к списку?
сэр, вы слишком быстро для меня, я соглашаюсь на мой ответ и просто скорее повышу – MooingRawr
Большое спасибо за это. Однако для экспоненты я сделал значение [1: 8] ', поскольку первая цифра является знаковым битом, поэтому я не хотел этого в экспоненте. Большое спасибо за Вашу помощь! –
@AugustWilliams: в этом случае вы должны сделать '[1: 9]' для принятия 8 бит, поскольку он принимает элементы до '9-1' i.e 8. check edit –