This is called rot13 encoding:
d = {}
for c in (65, 97):
for i in range(26):
d[chr(i+c)] = chr((i+13) % 26 + c)
Builds the translation table, for both uppercase (this is what 65 is for) and lowercase (this is what 97 is for) chars.
print "".join([d.get(c, c) for c in s])
Prints the translated string.