python - 是否有任何类型的文本“isspace()”不会检测到空格,包括在 python 之外处理的文本?
问题描述
我注意到在一些 Python 代码中,它们处理未在 Python 中处理的文本,它们不使用isspace()
内置的标准。他们使用一些其他类型的过滤。
一个例子是here
def _is_whitespace(c):
if c == " " or c == "\t" or c == "\r" or c == "\n" or ord(c) == 0x202F:
return True
return False
我想知道是否有任何场景isspace()
无法从文本中识别空格,也许是在 python 之外处理的文本?如果不是,那将是什么方法?
解决方案
在这种特定情况下,用户实现检测到的空白字符比内置 cpython 实现所检测到的要少(来自Python isspace() 的完整实现在哪里)。在不知道您链接到的项目的详细信息的情况下,这样做的原因是未知的 - 五个月前添加代码时的提交消息并未表明包含他们自己的版本的任何具体原因 - 这可能是由于不知道该isspace
方法存在。
您通常没有完整的标准库方法列表,并且最终会不时地重新实现这些方法。在这种情况下,它可能(不知道添加它的原因,我们只能猜测)安全地被内置版本替换。不过,他们希望有一个更窄的实现可能是有原因的。
推荐阅读
- .htaccess - 如何在 htaccess 中编写正确的重写规则?
- java - Android Studio Firebase 提取查询问题
- nest-device-access - 无法继续结帐
- rubygems - Jekyll 安装:Ruby Gems FFI - Mac 上缺少 ARM64 架构(新的 M1 型号) - 有修复吗?
- matlab - 如何减少涉及欧几里得范数的舍入误差
- java - Reactor .then() 不会等到所有项目都发出后才开始处理
- app-store-connect - 在 App Store Connect 中,应用预览海报框架未保存
- flutter - 第一次请求许可时如何使颤动的谷歌地图提示“始终允许”?
- django - 根据提供的教程,无法使用 Apache 服务器在 AWS Lightsail 上部署 Django 应用程序
- r - ROC曲线和混淆矩阵的区别:R Tidymodels,XGBoost