2024-04-24 09:47:15 发布
网友
我正在使用此代码获取长文本的前4000个字符
text = data[0:4000] print(text)
数据是包含长文本的变量,现在的问题是当我打印文本时,最后我得到半个单词,例如“con”,而单词应该是“content”
我想知道是否有办法确保这些词不会被截断
一个简单的find语句查找从字符4000开始的空格,就开始了这个过程
x = txt.find(' ',4000)
但是为了避免截断最后一个单词,您需要测试find语句的结果
如果起始点4000在最后一个单词内,那么它将返回-1,您将打印/返回整个文本
如果起始点在最后一个单词之前,那么它将返回下一个空格的索引,您将打印到该索引
x = txt.find(' ',4000) if x < 0: print (txt) else: print (txt[:x])
还要记住,find的起点是以零为基础的,因此如果第4000个字符是一个空格,它将找到下一个空格。作为一个简单的示例,下面的代码将返回“四五”,而不是简单的“四”。如果这不是期望的结果,那么考虑在您的查找中使用3999。
txt = "four five six" x = txt.find(' ',5) print(txt[:x]) # returns "four five"
查找4000个字符后的第一个空格。您可以使用max来解释以超过4000个字符结尾但结尾没有空格的文本
max
ix = max(data.find(' ', 4000), 4000) text = data[:ix]
一个简单的find语句查找从字符4000开始的空格,就开始了这个过程
但是为了避免截断最后一个单词,您需要测试find语句的结果
如果起始点4000在最后一个单词内,那么它将返回-1,您将打印/返回整个文本
如果起始点在最后一个单词之前,那么它将返回下一个空格的索引,您将打印到该索引
还要记住,find的起点是以零为基础的,因此如果第4000个字符是一个空格,它将找到下一个空格。作为一个简单的示例,下面的代码将返回“四五”,而不是简单的“四”。如果这不是期望的结果,那么考虑在您的查找中使用3999。
查找4000个字符后的第一个空格。您可以使用
max
来解释以超过4000个字符结尾但结尾没有空格的文本相关问题 更多 >
编程相关推荐