Translator-ish Library
Instead of


i = 0
while i &lt; len(text):
    j = ord(text[i])
    ...
    ...
    ...
    i += 1



and using text[i] for accessing individual elements (which is NOT a Pythonic way).
Get rid of i and write simply

for c in text:
    j = ord(c)
    ...
    ...
    ...





    j = ord(text[i])
    k = bin(ord(text[i]))
    l = hex(ord(text[i]))
    m = oct(ord(text[i]))



After performing the first of those commands is ord(text[i]) already in the variable j, isn't it? So why not reuse it in the rest of them:

for c in text:
    j = ord(c)
    k = bin(j)
    l = hex(j)
    m = oct(j)




Instead of


print(text[i], " ", j, " ", k, "", l, "", m)



use the format() method and replacement fields {}:

print("{}   {}   {}  {}  {}".format(text[i], j, k, l, m))