gpt4 book ai didi

python - python 中的 re.split() 与 str.split()

转载 作者:行者123 更新时间:2023-12-01 02:10:23 25 4
gpt4 key购买 nike

我遇到过这个函数,它应该标记给定的句子

def basic_tokenizer(sentence):
words = []
for space_separated_fragment in sentence.strip().split():
words.extend(re.split(" ", space_separated_fragment))
return [w for w in words if w]

据我所知,strip().split()应该已经足够了,但是使用了re.split(),然后甚至在返回中使用了[w for w in Words if w]

我想知道这可能是什么原因?一个通过这三个方法得出不同结果的例子将不胜感激

最佳答案

整个函数可以缩短为:

def basic_tokenizer(sentence):
return sentence.split()

原因:

  • sentence.strip().split() 已经去掉了末尾的空格,并在空白处进行了分割,没有必要迭代结果列表并扩展-通过再次按空格分割单词列表 (words.extend(re.split("", space_separated_fragment)))

  • 此外,在 [w for w in Words if w] 中,if w 检查也是多余的,因为不存在错误元素(因为所有元素都是非-空字符串)

关于python - python 中的 re.split() 与 str.split(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48736239/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com