python 中英文 字节截取字符串 换行 问题

一行全部填满37个中文   utf-8编码 字节数是111,但是如果存在英文字符的话37个就填不满37个中文字符的长度。怎么将后面的字最大限度的补到前面一行而不超过37个中文字符的总长度。

obj=“放置本产品时,请保证距离墙壁、家具、窗帘等物体至少13cm,并注意保持产品进、出风口畅通,避免阻碍物(如墙壁、花盆、晾晒的衣物、布或者窗帘等)挡住进、出风口通道。本产品可净化环境空气,但不能补充新鲜空气,建议用户在使用过程中,定期(如每天)开窗通风。与燃烧器具一起使用时,同样需保持空气流通,以免因通风不良造成一氧化碳等气体中毒。”

def cut(obj, sec):
    str_list = [obj[i:i + sec] for i in range(0, len(obj), sec)]

c=cut(obj,37)

print(cut)

这样写:

import re
def cut(obj, sec):
    s_list=[]
    for i in range(0, len(obj), sec):
        sub=obj[i:i + sec]
        x=re.findall('[a-zA-z]+',sub)
        if x:
            m=''.join(x)
            s_list.append(obj[i:i + sec+len(m)])
        else:
            s_list.append(sub)
    
    return s_list
c = cut(obj, 37)
print(c)

 

def cut(obj, sec):
    str_list = [obj[i:i + sec] for i in range(0, len(obj), sec)]
    return str_list


obj = '放置本产品时,请保证距离墙壁、家具、窗帘等物体至少13cm,并注意保持产品进、出风口畅通,避免阻碍物(如墙壁、花盆、晾晒的衣物、布或者窗帘等)挡住进、出风口通道。本产品可净化环境空气,但不能补充新鲜空气,建议用户在使用过程中,定期(如每天)开窗通风。与燃烧器具一起使用时,同样需保持空气流通,以免因通风不良造成一氧化碳等气体中毒。'
c = cut(obj, 37)

print('\n'.join(c))

如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢