一行全部填满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))
如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢