Автор, вот то что Вам нужно:
import sys
i=raw_input('Enter secret text:')
al1='ABCDEFGHIJKLMNOPQRSTUWXYZ':)
al2='abcdefghijklmnopqrstuwxyz'
list=list(i)
while ' ' in list:
list.remove(' ')
key=int(raw_input('Enter desired key:'))
for letter in list:
if letter in al1:
sys.stdout.write(al1[int(al1.find(letter))+key])
elif letter in al2:
sys.stdout.write(al2[int(al2.find(letter))+key])
Функция/оператор print автоматически добавляет символ переноса строки, поэтому в таких случаях лучше использовать sys.stdout.write()
Всё что указано в ответах выше, вы меня извините, это какой-то наркоманский бред

Кстати только что заметил конструкцию:
list=list(i)
while ' ' in list:
list.remove(' ')
Для таких вещей у строк в Питоне есть метод replace.
Можно заменить Ваш код вот таким:
i = raw_input('Enter secret text:').replace(' ', '')
И далее использовать в цикле непосредственно строку, без преобразования в список:
Таким образом получится примерно вот так:
import sys
i = raw_input('Enter secret text:').replace(' ', '')
al1 = 'ABCDEFGHIJKLMNOPQRSTUWXYZ':)
al2 = 'abcdefghijklmnopqrstuwxyz'
key = int(raw_input('Enter desired key:'))
for letter in i:
if letter in al1:
sys.stdout.write(al1[int(al1.find(letter))+key])
elif letter in al2:
sys.stdout.write(al2[int(al2.find(letter))+key])