Python函数消息格式化程序

Python函数消息格式化程序,python,Python,我的任务是开发一个函数,该函数接收字符串消息,并在需要时返回带有分页的字符串消息数组。对于本练习,输入消息中的最大字符数为160。另外,不要把单词分成音节和连字符 我的功能不能满足不将单词分解成音节的功能 def sms_format(message, size): sms_text = [] if len(message) == 0: return sms_text text = list(message) if len(text) <

我的任务是开发一个函数,该函数接收字符串消息,并在需要时返回带有分页的字符串消息数组。对于本练习,输入消息中的最大字符数为160。另外,不要把单词分成音节和连字符

我的功能不能满足不将单词分解成音节的功能

def sms_format(message, size):
    sms_text = []
    if len(message) == 0:
        return sms_text

    text = list(message)

    if len(text) <= size:
        new_text = ''.join(text)
        sms_text.append(new_text)

    elif len(text) > size:
        while len(text)>size:
            texts = ''.join(text[:size])
            sms_text.append(texts)
            text = text[size:]

        sms_text.append(''.join(text))

    return(sms_text)


message = "Your task is to develop a function that takes"


print(sms_format(message, 20))

def sms_格式(消息、大小):
sms_text=[]
如果len(消息)==0:
返回sms\u文本
text=列表(消息)
如果长度(文本)大小:
而len(text)>大小:
text=''.join(text[:size])
sms_text.append(文本)
text=文本[大小:]
sms_text.append(“”.join(text))
返回(sms_文本)
message=“您的任务是开发一个需要
打印(sms_格式(消息,20))
实际结果:
[“您的任务是开发”“删除”“接受”“的函数]

预期结果: 它不应该打断单词

这似乎可以:

def sms_格式(消息、大小):
结果=[]
words=message.split()
chunk=words.pop(0)
用文字表示:
如果len(块+字)>=大小:
result.append(块)
块=字
其他:
chunk=”“.join((块,字))
result.append(块)
返回结果
message=“您的任务是开发一个长文本函数,并将其拆分为块。”
打印(sms_格式(消息,20))
给出:

['Your task is to', 'develop a function', 'that takes long', 'text, and splits it', 'into chunks.']
更新elif块:

elif len(text)>尺寸:
当前大小=大小
而len(text)>大小:
text=''.join(text[:当前大小])
如果文本[-1]=''或文本[:size+1]='':
sms_text.append(文本)
text=text[当前大小:]
当前大小=大小
其他:
当前大小=当前大小-1

代码的哪一部分试图不拆分单词?通过不拆分单词,您是否打算得到一个直字符串?您的预期输出是否为
[“您的任务是”,“开发一个函数”,“需要”]
Output : ['Your task is to ', 'develop a function ', 'that takes']