Encode and Decode Strings (LC-0271)

class Solution:
    def encode(self, s):
        encoded = []
        for ix, _s in enumerate(s):
            encoded.append(f"{len(_s)}#{_s}")
        return "".join(encoded)

    def decode(self, s):
        lx = 0
        res = []
        while lx < len(s):
            rx = s.find('#', lx)
            if rx == -1:
                break
            L = int(s[lx:rx])
            res.append(s[rx + 1:rx + 1 + L])
            lx = rx + 1 + L
        return res