python中字符串查找空格算不算一个字符_Python-检查字符串中的多个空格

I am using this function to check if a string contains multiple white spaces:

def check_multiple_white_spaces(text):

return " " in text

and it is usually working fine, but not in this following code:

from bs4 import BeautifulSoup

from string import punctuation

text = "

Hello      world!!

\r\n\r"

text = BeautifulSoup(text, 'html.parser').text

text = ''.join(ch for ch in text if ch not in set(punctuation))

text = text.lower().replace('\n', ' ').replace('\t', '').replace('\r', '')

print check_multiple_white_spaces(text)

The final value of text variable is hello      world , but I don't know why the check_multiple_white_spaces function is returning False instead of True.

How can I fix this?

解决方案

If you were to print the contents of text using repr(), you will see that it does not contain two consecutive spaces:

'hello \xa0 \xa0 \xa0world '

As a result, your function correctly returns False. This could be fixed by converting the non-break space into a space:

text = text.replace(u'\xa0', u' ')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值