смещение букв с помощью ord и chr

Я пытаюсь сделать функцию, которая сдвигает каждую букву в каждом слове вправо по значению, и эти слова будут из списка, который я открою с помощью функции «открыть». Я написал код, и здесь я столкнулся с некоторыми трудностями мой код

def test():
value=eval(input("Value here!"))
with open ("word-text.txt","r") as f:
    for ord in (f):
        print (ord)
        for chr in ord:
            print (chr)
            #nice=(chr[len(ord)+value])
        ''.join([chr(ord(i)+2) for i in s])
        print (i)

это вывод, который я получаю

Value here!2
apples

a
p
p
l
e
s


Traceback (most recent call last):
  File "<pyshell#54>", line 1, in <module>
    test()
  File "/Users/user/Desktop/Outlook(1)/lab6.py", line 59, in test
    ''.join([chr(ord(i)+2) for i in s])
NameError: global name 's' is not defined

список, который у меня есть следующие слова яблоки апельсины арбуз киви цуккини морковь окра халапеньо перец огурец банан и когда я использую этот код

ef test():
value=eval(input("Value here!"))
with open ("word-text.txt","r") as f:
    for ord in (f):
        print (ord)
        for chr in ord:
            print (chr)
            nice=(chr[len(ord)+value])
            print (nice)

Я получаю этот вывод

Value here!2
apples

a
Traceback (most recent call last):
  File "<pyshell#56>", line 1, in <module>
    test()
  File "/Users/user/Desktop/Outlook(1)/lab6.py", line 58, in test
    nice=(chr[len(ord)+value])
IndexError: string index out of range
>>> 

Что я здесь не так делаю? и какой код лучше использовать, чтобы заставить его работать

Спасибо

Ответы на вопрос(1)

Ваш ответ на вопрос