Формулировка задачи: Каждый алфавит в верхнем регистре сдвигается влево, например, если алфавит D был сдвинут влево на 3, он станет A, а E станет B, и так далее ..
I правильно получил первые два тестовых примера, но я застрял на третьем, у которого был знак фунта.
Моя пробная версия:
sh = int(input())
s = input()
n = ""
for char in s:
val = ord(char)-sh
if char != " ":
if 65 <= val <= 90:
n += chr(val)
else:
if val < 65:
if '0' <= char <= '9':
n += char
else:
n += chr(90 - (65 - val - 1))
else:
n += char
print(n)
Тестовый пример 1:
(in1)>> 3
(in2)>> H3LL0 W0RLD
(out)>> E3II0 T0OIA
Тестовый пример 2:
(in1)>> 6
(in2)>> THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG
(out)>> NBY KOCWE VLIQH ZIR DOGJM IPYL NBY FUTS XIA
Тестовый пример 3:
(input_num_1)>> 2
(input_num_2)>> H4IGDFDNO£PJNHVDKHZPDOPG2
(ExpectedOut)>> F4GEBDBLM\-62\-93NHLFTBIFXNBMNE2
(My_output_.)>> F4GEBDBLMNHLFTBIFXNBMNE2
Ваша помощь и и мы очень ценим время, чтобы рассмотреть это. Спасибо.
Изменить: для большей ясности я добавил то, что мой код дает в качестве результата ожидаемого вывода, и, чтобы указать c, как / почему £
отображается на \-62\-93
?