Simple Python Solution
\nclass Solution:\n    def digitSum(self, s: str, k: int) -> str:\n        \n        final_s = s\n        while len(final_s) > k:\n            new_s = \'\'     
```\nclass Solution:\n    def digitSum(self, s: str, k: int) -> str:\n        \n        final_s = s\n        while len(final_s) > k:\n            new_s = \'\'                  # newly formed string\n            k_length_sub_s = \'\'         # k-length substring\n            for i in range(len(final_s)):\n                k_length_sub_s += final_s[i]\n                if (i+1) % k == 0 or i+1 == len(final_s):           # if we have formed k-length substring, or if last letter\n                    sum_s = sum([int(x) for x in k_length_sub_s])   # calculate sum of k-length substring\n                    new_s += str(sum_s)                             # append k-length substring to newly formed string\n                    k_length_sub_s = \'\'\n            final_s = new_s                                         # update newly formed string\n                    \n        return final_s\n```
[]