Python怎么在input增加文字?

txt='''
唐
宋
元
明
清
'''

插入文字,变成:
'''
唐
李世民
武则天
李隆基

宋

元
忽必烈

明

清
顺治
康熙
'''

以下代码亲测有效:

txt='''
唐
宋
元
明
清
'''

t = txt.replace('\n','')
emperors = {}
while True:
    d = input(f'请输入朝代名({t}之一,输q退出):')
    if d=='q':
        break
    if d not in t:
        continue
    e = input(f'输入{d}朝的哪位皇帝:')
    emperors[e] = d
    
res = ['']
for i in t:
    res.append(i)
    for k,v in emperors.items():
        if v==i:
            res.append(k)
    else:
        res.append('')

txt = '\n'.join(res)

print(txt)

'''
#最终的字典为:
emperors={'李世民': '唐', '武则天': '唐', '李隆基': '唐', '忽必烈': '元', '顺治': '清', '康熙': '清'}

'''

txt='''
唐
宋
元
明
清
'''
def insert(a, b, txt):
    _txt = txt.strip('\n').split('\n')
    _txt.insert(_txt.index(a) +1, b)

    return '\n' + '\n'.join(_txt) + '\n'

a = input('在哪一行后添加')
b = input('内容')
txt = insert(a, b, txt)

先split('\n'),得到一个list
然后循环,插入你要插入的内容,最后重新拼接成str
这是一般的操作步骤
偶尔也可以用字符串替换的方式把中间部分替换成你想要的内容
或者在最开始定义的时候就定义成"唐{}宋{}元{}明{}清"这种形式,然后执行format给它传参