您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

有效地检查字符串是否由Python中的一个字符组成

有效地检查字符串是否由Python中的一个字符组成

到目前为止,这是最快的,甚至比count()它快几倍,只需使用出色的mgilson计时套件即可

s == len(s) * s[0]

在这里,所有检查都是在Python C代码中完成的,它只是:

字符串越长,时间奖励就越大。但是,正如mgilson所写,它会创建字符串的副本,因此,如果您的字符串长度为数百万个符号,则可能会出现问题。

从计时结果可以看出,解决任务的最快方法通常不会为每个符号执行任何Python代码。但是,该set()解决方案还可以在Python库的C代码中完成所有工作,但是它仍然很慢,可能是由于通过Python对象接口操作字符串。

关于空字符串大小写。如何处理它很大程度上取决于任务。如果任务是“检查字符串中的所有符号是否都相同”,s == len(s) * s[0]则为有效答案(无符号表示错误,可以例外)。如果任务是“检查是否存在唯一的唯一符号”,则空字符串应为False,答案为s and s == len(s) * s[0],或者bool(s) and s == len(s) * s[0]您是否希望接收布尔值。最后,如果我们将任务理解为“检查是否存在不同的符号”,则空字符串的结果为True,答案为not s or s == len(s) * s[0]

python 2022/1/1 18:32:37 有202人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶