Помогите понять, где я ошибся

Gudvin_1

Новичок
Пользователь
Окт 28, 2020
2
0
1
Долго думал над задачей, в итоге что-то написал. Вроде бы выдаёт ответ правильный, но проверку не проходит. Возможно ввода строк, над чем я долго парился...
Суть задачи:
сдвиг на клавиатуре на 1 влево. То есть, вводя R - получаем Е, и т.д.
Основная проблема, которая у меня возникла - нужно вводить несколько строк, и только после запускать всё остальное.
1:
Python:
def vvod(lst):
    while True:
        str = input()
        if str != '':
            lst.append(str)
        else:
            break
def poesk(i):
    for x in range(len(b)):
        if b[x] != i:
            continue
        else:
            break
    return b[x-1]
res = ''
str = input()
lst = ''
lst = list(lst)
lst.append(str)
b = "1234567890-=QWERTYUIOP[]ASDFGHJKL;'ZXCVBNM,./"
vvod(lst)
for a in lst:
    for i in a:
        if i == ' ':
            res += ' '
            continue
        else:
            res += poesk(i)
    if len(lst) > 1:
        res += "\n"
print(res)

2:
Python:
def vvod():
    while True:
        str = input()
        if str != '':
            lst.append(str)
        else:
            break
def qwertyu():
    vvod()
    res = ''
    for a in lst:
        for i in a:
            if i == ' ':
                res += ' '
                continue
            else:
                res += poesk(i,res)
        if len(lst) > 1:
            res += "\n"
    return res
def poesk(i,res):
    b = "1234567890-=QWERTYUIOP[]ASDFGHJKL;'ZXCVBNM,./"
    for x in range(len(b)):
        if b[x] != i:
            continue
        else:
            res += b[x - 1]
            break
    return b[x-1]
str = input()
lst = ''
lst = list(lst)
lst.append(str)
print(qwertyu())
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 625
469
83
Python:
lst = []

while True:
    a = input('Введите символы (ввод пустого символа = закончить ввод): ')
    if not a:
        break
    lst.append(a)

b = "1234567890-=QWERTYUIOP[]ASDFGHJKL;'ZXCVBNM,./"

for i in lst:
    for index_a, simbol_a in enumerate(i):
        for index_b, simbol_b in enumerate(b):
            if simbol_a == simbol_b:
                print(b[index_b - 1])
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 625
469
83
Python:
a = input('Введите символы: ')

b = "1234567890-=QWERTYUIOP[]ASDFGHJKL;'ZXCVBNM,./"

for index_a, simbol_a in enumerate(a):
    for index_b, simbol_b in enumerate(b):
        if simbol_a == simbol_b:
            print(b[index_b - 1])
 
Последнее редактирование:

Gudvin_1

Новичок
Пользователь
Окт 28, 2020
2
0
1
Получается ввод всё равно однострочный, а мне нужно вводить несколько строк
 

Форум IT Специалистов