正则给定数字字符串'1',后面的字符串用来描述前一个字符串

给定数字字符串'1',后面的字符串用来描述前一个字符串
'1',
'11':1个1
'21':2个1
'1211':1个2和1个1
'111221':1个1和1个2和2个1
'312211':3个1和2个2和1个1
从键盘输入数字n
打印第n个字符串,例n = 4 ,打印 '111221'

img

#!/usr/bin/python
# -*- coding: UTF-8 -*-
"""
@author: Roc-xb
"""
import itertools as it

if __name__ == '__main__':
    n = int(input())
    s = ['1']
    i = 0
    while i < n:
        sv = ''.join([str(len(list(v))) + i for i, v in it.groupby(s[-1])])
        if i == n - 1:
            print(sv)
        s.append(sv)
        i += 1

import itertools as it

s = ['1']
n = int(input(">>>"))

i = 0 
while i <n:
    st = s[-1]
    res = it.groupby(st)
    sr = ''.join([str(len(list(v))) + i for i, v in res])
    s.append(sr)
    i += 1
    
print(s)

这是个脑经急转弯吗?没看懂题意

没看懂+1

'1',
后面的字符串用来描述前一个字符串
'11':1个1
'21':2个1
'1211':1个2和1个1
'111221':1个1和1个2和2个1
'312211':3个1和2个2和1个1