我是一个绝对的初学者,请求大家帮助大师。你知道吗,为什么答案是 6(我在 udacity 上运行 python 解释器)
s = 'udacity'
t = 'city'
print s.find(t[i:])
答案:6
我是一个绝对的初学者,请求大家帮助大师。你知道吗,为什么答案是 6(我在 udacity 上运行 python 解释器)
s = 'udacity'
t = 'city'
print s.find(t[i:])
答案:6
您的代码中发生了两件事:
1) 字符串的子字符串(t[i:])
2) 查找子字符串/字符第一次出现的索引 (s.find())
首先执行t[i:],相当于从第i个(3, i=3)索引中找到t("city")的子串,返回"y"。
0 1 2 3
城市_
现在代码变成了 s.find("y"),这意味着在 "s" ("udacity") 中找到 "y" 第一次出现的索引,因此它返回 6。
0 1 2 3 4 5 6
无耻_
因为i
等于 3 =>t[i:]
等于并且in的'y'
索引是 6'y'
'udacity'