2017-10-19 116 views
0

标题说明了一切。是否保证'isspace'对'split'的每个默认分隔符都返回true,并且只对它们返回true?

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

我想,以确保:

  1. isspace方法,这些分隔符中的每一个返回True
  2. 这里没有其他字符(Ascii,Unicode等),这些分隔符中没有包含这些字符,但isspace返回True就可以了。

换句话说,是在这个方面的方法splitisspace“完全一致”?

谢谢。

回答

1

是的,只是跑这个代码。

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

OK,能否请您解释一下在上面这个神奇的数字?我认为这是可能的unicode字符的总数,但是这是标准的一部分吗? – goodvibration

+0

@goodvibration请参阅[文档](https://docs.python.org/2/library/functions.html#unichr)。这是最大unicode值0x10FFFF加1. – Dabiuteef

+0

好的,这是一个很好的黑客(虽然一个简短的评论可能是有用的)。谢谢!!! – goodvibration