Вы смешиваете символы и строки.Когда вы перебираете строку (например, «сообщение»), на каждой итерации вы получаете один символ.Кроме того, ord (ch) является целым числом, числом, поэтому вы не можете «разделить» его.
Кроме того, не используйте «input», вместо этого используйте «raw_input».
Возможно, вам нужно что-то похожее на это:
message = raw_input("enter message to encode: ")
encoded_message = ""
for ch in message:
encoded_ord = ord(ch) + 2
Здесь у вас еще нет нового сообщения, поскольку цикл выдает вам по одному символу за раз, поэтому я переименую переменную в«encoded_ord», который лучше описывает, что он содержит.
Теперь вы можете превратить этот «кодированный орд» в закодированный символ и добавить его в закодированное сообщение:
encoded_ch = chr(encoded_ord)
encoded_message += chr(encoded_ch)
print "encoded msg in text:", encodedmessage