>> len("".split(" ")) 1 -6ren">
gpt4 book ai didi

python - 为什么 len ("".split ("")) 给出 1? Python

转载 作者:太空狗 更新时间:2023-10-29 21:13:48 25 4
gpt4 key购买 nike

len("".split("")) == 1 显示 True 的 pythonic 解释是什么?

为什么 "".split("") 会产生 ['']

>>> len("".split(" "))
1
>>> "".split(" ")
['']

最佳答案

str.split(sep) 返回至少 一个元素。如果在文本中找不到 sep,则该元素是原始的、未拆分的文本。

对于空字符串,sep定界符当然是找不到的,在文档中有专门的调用:

Splitting an empty string with a specified separator returns [''].

您可能对 None 分隔符选项(默认)的行为感到困惑:

If sep is not specified or is None, a different splitting algorithm is applied: runs of consecutive whitespace are regarded as a single separator, and the result will contain no empty strings at the start or end if the string has leading or trailing whitespace. Consequently, splitting an empty string or a string consisting of just whitespace with a None separator returns [].

(强调我的)。这使得 str.split(None) 成为异常(exception),而不是规则。

关于python - 为什么 len ("".split ("")) 给出 1? Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18701216/

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