![]() ![]() ![]() You just have to interpret a message as an integer written in another base system with different symbols def frombase(s, sym):Īnd then for your specific case symbols = [ I think the other answers are better than this one, but purely mathematically, there is an obvious way of doing this. If you really need to convert the string to only numbers, you would have to use answer. 'Welcome to the InterStar cafe, serving you since 2412!' If you already have your strings, you can convert them with str.encode('utf-8'): > myString = "Welcome to the InterStar cafe, serving you since 2412!"ī'Welcome to the InterStar cafe, serving you since 2412!' ![]() > coded = base64.b64encode(b"Welcome to the InterStar cafe, serving you since 2412!")ī'V2VsY29tZSB0byB0aGUgSW50ZXJTdGFyIGNhZmUsIHNlcnZpbmcgeW91IHNpbmNlIDI0MTIh'ī"Welcome to the InterStar cafe, serving you since 2412!" Take into account that it requires bytes-like object, so you should start your strings with b"I am a bytes-like string": > import base64 If you are simply looking for making a certain string unreadable by a human you might use base64, base64.b64encode(s, altchars=None) and base64.b64decode(s, altchars=None, validate=False): Recoveredstring = code('utf-8') # Strip pad before decoding Mybytes = mystring.encode('utf-8') b'\x01' # Pad with 1 to preserve trailing zeroes If that's a problem, you can always just pad with a '\x01' explicitly and remove it on the decode side so there are no trailing 0s to lose: mystring = "Welcome to the InterStar cafe, serving you since 2412!" This has one flaw, which is that if the string ends in NUL characters ( '\0'/ \x00') you'll lose them (switching to 'big' byte order would lose them from the front). Recoveredbytes = myint.to_bytes((myint.bit_length() 7) // 8, 'little') Myint = int.from_bytes(mybytes, 'little') to_bytes on the resulting int, then decode back to str: mystring = "Welcome to the InterStar cafe, serving you since 2412!" Encode it to a bytes in a fixed encoding, then convert the bytes to an int with int.from_bytes. ![]()
0 Comments
Leave a Reply. |