我正在尝试转换这个 php 函数
function strpos_r($haystack, $needle)
{
if(strlen($needle) > strlen($haystack))
trigger_error(sprintf("%s: length of argument 2 must be <= argument 1", __FUNCTION__), E_USER_WARNING);
$seeks = array();
while($seek = strrpos($haystack, $needle))
{
array_push($seeks, $seek);
$haystack = substr($haystack, 0, $seek);
}
return $seeks;
}
我已经编写了这个 python 函数,但没有按预期工作。
def strposR(haystack, needle):
if strlen(needle) > strlen(haystack):
sys.stderr.write("length of argument 2 must be <= argument 1")
seeks = []
seek = 0
while seek == haystack.rfind(needle):
seeks.append(seek)
haystack = haystack[0:seek]
return seeks
def strlen(x):
return len(x)
我做错了什么?任何指针将不胜感激。