python - 如何检查列表的每个元素中的最后一位数字是否相同
问题描述
for g in range(0,len(lst)):
if lst[g%10] == lst[(g+1)%10]:
我在卡 [(i+1)%10] 处遇到索引错误,我想知道为什么这段代码不起作用,%10 检查列表中每个元素中的最后一个数字是否是相同的。
解决方案
你应该使用:
for g in range(len(lst)-1):
if lst[g%10] == lst[(g+1)%10]:
的原因-1
是因为您不必将列表的最后一个值与它之后的值进行比较(这就是您收到索引错误的原因,因为最后一个之后没有项目)。
当您将倒数第二项与最后一项进行比较时,已经检查了列表的最后一项。
推荐阅读
- c# - 如何从文件末尾删除 N 个字节,仅当它们与指定的字节数组匹配时
- python - 如何检查查询集中包含的每个对象的字段的验证?
- c# - 在 WEB API 上使用 Fluent Validation 进行模型验证
- bootstrap-4 - 文本换行问题?
- prometheus - 在 Prometheus 中使用 group_left 时出错
- sql-server - 如何将每一行转换为具有唯一列
- bash - Bash exit 1 是否应该在终端上显示任何内容?
- angular - 正在应用路由但 url 正在改变但页面没有改变
- android - 从 GPS 获取纬度和经度
- javascript - 与其他浏览器相比,为什么 ios Safari 上的“mediaDevices.getUserMedia”慢?