python - str.endswith(suffix[, start, end]) 的机制是什么?
问题描述
我对如何start
和end
工作感到非常困惑。我认为这个函数从第 th 元素开始计数,start
然后在end
第 th 元素之后的第 th 元素结束start
。我的意思是,例如,如果我将start
and定义end
为 1 和 2,则应该查看元素 3。我错了:
a = "orange"
a.endswith("g", 0, 5)
返回True
;
a = "orange"
a.endswith("g", 1, 5)
也返回True
。任何解释表示赞赏!
解决方案
我的意思是,例如,如果我将 start 和 end 定义为 1 和 2,则该元素应该被视为 3。
该start
参数表示必须从字符串的开头跳过多少个字符。到目前为止还好。正如 Mark Meyer 所指出的,该end
参数不表示从起始字符开始的长度,而是表示源字符串中结束字符(排除)的索引,就像切片一样。
推荐阅读
- mysql - 更新时的Mysql未知列
- r - 为 tibble r 中的每一列创建一个 for 循环
- java - 如何使用 java spring 验证来验证字符串长度?
- php - 哪些编程语言有包装器?
- java - Spring 4.x 兼容 Java 16
- reactjs - webpack-dev-server v "3.11.2" 正则表达式拒绝服务漏洞修复?
- puppeteer - UnhandledPromiseRejectionWarning:TimeoutError:导航超时超过 30000 毫秒
- javascript - 如何在 .then() JS 中返回
- javascript - KendoUpload - 在上传期间或运行时更改块大小
- php - 使用命令 [php artisan make:controller Admin\HomeController] 在 Laravel 8 [参数 2 通过] 中出错