用Python把文本转诗歌格式,具体要求如下。

《锦瑟》,全文如下:锦瑟 李商隐
锦瑟无端五十弦,一弦一柱思华年。庄生晓梦迷蝴蝶,望帝春心托杜鹃。沧海月明珠有泪,蓝田日暖玉生烟。此情可待成追忆,只是当时已惘然。
这是一段由标点符号分割的文本,请编写程序,以标点符号为分割,将这段文本转换为诗词风格。要求:每行30个字符,诗词居中,每半句一行,去掉所有标点。输出到文件“锦瑟.txt”,并将“锦瑟.txt”文件按诗词风格打印输出。

import re

poem = """锦瑟无端五十弦,一弦一柱思华年。庄生晓梦迷蝴蝶,望帝春心托杜鹃。沧海月明珠有泪,蓝田日暖玉生烟。此情可待成追忆,只是当时已惘然。"""

res = re.split(r"[。,]", poem, re.DOTALL)
print(r'《锦瑟》'.center(30))
print(r'--作者:李商隐'.rjust(25))
print()
for i in res:
    if i:
        print(f"{i:^30}")
        
'''--result
             《锦瑟》             
                 --作者:李商隐

           锦瑟无端五十弦            
           一弦一柱思华年            
           庄生晓梦迷蝴蝶            
           望帝春心托杜鹃            
           沧海月明珠有泪            
           蓝田日暖玉生烟            
           此情可待成追忆            
           只是当时已惘然            
'''

import re
 
poem = """锦瑟无端五十弦,一弦一柱思华年。庄生晓梦迷蝴蝶,望帝春心托杜鹃。沧海月明珠有泪,蓝田日暖玉生烟。此情可待成追忆,只是当时已惘然。"""
 
res = re.split(r"[,。]", poem, re.DOTALL)
infile = open('锦瑟.txt','w',encoding='utf-8')
print(r'《锦瑟》'.center(30),file = infile)
print(r'--作者:李商隐'.rjust(25),file = infile)
print(file = infile)
for i in res:
    if i: print(f"{i:^30}", file=infile)
infile.close()

with open('锦瑟.txt', 'r', encoding='utf-8') as outfile:
    peom = outfile.readlines()
for p in peom:
    print(p, end='')
         《锦瑟》             
             --作者:李商隐

       锦瑟无端五十弦            
       一弦一柱思华年            
       庄生晓梦迷蝴蝶            
       望帝春心托杜鹃            
       沧海月明珠有泪            
       蓝田日暖玉生烟            
       此情可待成追忆            
       只是当时已惘然            

?每行30个字符,每半句一行是啥意思?