Python 是否保证“isspace”对“split”的每个默认分隔符都返回true,并且只对它们返回true?

Python 是否保证“isspace”对“split”的每个默认分隔符都返回true,并且只对它们返回true?,python,python-2.7,whitespace,Python,Python 2.7,Whitespace,我知道split方法默认使用空白分隔符 我想确保: isspace方法为这些分隔符中的每一个返回True。 没有其他字符不包括在这些分隔符中,比如Ascii、Unicode等,但isspace返回True。 换句话说,split和isspace方法在这方面是否完全一致?是的,只是运行了这段代码 import sys for i in range(sys.maxunicode + 1): c = unichr(i) assert c.isspace() == (len((u'foo

我知道split方法默认使用空白分隔符

我想确保:

isspace方法为这些分隔符中的每一个返回True。 没有其他字符不包括在这些分隔符中,比如Ascii、Unicode等,但isspace返回True。
换句话说,split和isspace方法在这方面是否完全一致?

是的,只是运行了这段代码

import sys
for i in range(sys.maxunicode + 1):
    c = unichr(i)
    assert c.isspace() == (len((u'foo' + c + u'bar').split()) == 2)

好的,你能解释一下上面这个神奇的数字吗?我假设这是可能的unicode字符总数,但这是标准的一部分吗?@goodvibration请参阅。它是最大unicode值0x10FFFF加1.BTW,我得到的值错误:unichr arg不在范围0x10000窄Python构建在我的环境上,因此您可能需要重新考虑1114112。@您的Python是用UCS-2而不是UCS-4编译的。我已经更新了答案。