У меня есть список двоичных чисел, и бит нужно переключать от 0 до 1 или от 1 до 0 только для простого индекса. Список двоичных чисел на самом деле близок к 100-битной длине. У меня есть код, например, 8-битный, но он не показывает ожидаемый результат:
def prime_index (input):
p = list(input)
s = ""
# Loop to check if
# index prime or not
for i in range (2, len(p) + 1):
if isPrime(i):
s = s + input[i-1]
flip = {'0': '1', '1':'0'}
flip=(flip[input[i]])
print (flip)
print (s)
input="11111111"
prime_index(input)
Я получаю вывод, как это:
0
0
0
0
1111
Результат должен выглядеть следующим образом, где бит перевернулся для индекса [2, 3, 5, 7]:
output:11001010
Надеюсь, кто-нибудь может мне помочь. Спасибо.