python - Python,函数,这里发生了什么?如果 lst1[index] != lst2[len(lst2) - 1 - index]
问题描述
有人可以帮我理解第 3 行吗?
def reversed_list(lst1, lst2):
for index in range(len(lst1)):
if lst1[index] != lst2[len(lst2) - 1 - index]:
return False
return True
谢谢
解决方案
函数reversed_list所做的是测试lst1是否是lst2的反转版本(倒数也是如此)。
让我们想象一下lst1是:
lst1 = [0, 1, 2, 3]
如果lst2是lst1的反转版本,则lst2必须按此顺序包含函数返回 true 的以下值:
lst2 = [3, 2, 1, 0]
在此示例中,len(lst1)等于4并且len(lst2)也等于4,因此if条件正在验证,在第一次迭代中,如果值lst1[0 (index) ]等于lst2[ 4 (len(lst2)) - 1 - 0 (索引) ]。
请注意,如果lst2如下所示,则函数reversed_list也将返回 true:
lst2 = [20, 15, 10, 5, 3, 2, 1, 0]
推荐阅读
- java - 如何模拟具有高回报的 hasNext
- reporting-services - 如何对不同的表达式应用不同的过滤器?
- c# - 如何在 Windows 窗体应用程序中制作下拉菜单
- windows - 在文件中查找包含回车符的字符串 - Windows 批处理
- java - 当我从 github https://github.com/smarteist/android-image-slider 使用这个库时,无法解析符号“动画”
- angularjs - uib模式上的ckEditor在角度js中不起作用
- facebook - 向 Instagram 提交 Spark AR 效果
- mysql - 如何对 MySQL varchar 字段值求和
- html - CSS:在 div 中放置一个符号。无法删除空格,定位在右上角
- reactjs - 已存储但未显示的字符串化对象