处理字符串中的空格

Python处理字符串中的空格往往是令人头痛的一件事。处理方式大概有以下几种:

使用 string.replace(s, old,new[, maxreplace])

如要要处理h e l l o这个字符串,就可以使用这个方法:

>>> import string

a =' h e l l o '

>>> print string.replace(a, ' ' , '')

hello

或者

>>> a = ' h e l l o '

>>> printa.replace(' ', '')

hello

但是如果要处理h e l l o\n呢?

当然你可以用

>>> a =' h e l l o\n'

>>> printa.replace(' ', '').replace('\n', '')

hello

但是如果你面对的字符串是h e l l o\r\n或者更多其他会产生空格的符号呢?

string的另一个方法:string.split(s[, sep[,maxsplit]]) 就派上用场了。此方法从字符串s中按sep作为分割符,讲字符串分割成几个部分并返回一个list。maxsplit指定了分割的最大次数。当sep和maxsplit为空时,任意空白字符会被作为分割符,包括(空字符,return,tab, newline等等)。Here we go~

>>> a = ' h e l l o \r\n'

>>> print a.split()

['h', 'e', 'l', 'l', 'o']

看起来起作用了,但是我们想要的是一个字符串而不是字符list。怎么办呢,这时候就可以使用string.join(words[, sep]) sep作为分割符连接字符list或tuple。默认的分割符是一个空格。

现在我们就可以把这个字符list转变为字符串啦~

>>> a = ' h e l l o \r\n'

>>> print ''.join(a.split())

hello

你可能感兴趣的:(处理字符串中的空格)