python - 嵌套循环内的python变量重新分配不起作用
问题描述
我正在尝试在嵌套的 for 循环中重新分配变量。我想在列表列表中获取数字 6 的索引,但它不起作用。为什么它不起作用,我该如何解决?
这是代码:
row = 0
col = 0
a = [[1, 2, 3, 4, 5], [3, 4, 4, 6, 9]]
for i in range(len(a)):
for j in range(len(a)):
if a[i][j] == 6:
row = i # expect row = 1
col = j # expect col = 3
print(row) # prints 0
print(col) # prints 0
解决方案
row
并且col
不会更新,因为该if
语句从未执行过。带有变量的循环j
需要基于 的长度a[i]
,而不是a
,因为a
它的长度为 2,而其中的每个列表的长度为 5。有了这个限制,它就找不到6
元素。
推荐阅读
- r - 按日期计算data.frame中所有点之间的距离
- c# - C#中的SQL注入
- javascript - Positioning style.left for DIV with javascript does not work
- apache-nifi - invokeHTTP 中“Put Response Body In Attribute”的属性名称
- apache-spark - 如何在 Spark Structured Streaming 中指定批处理间隔?
- system-verilog - 系统 Verilog:ref 类成员
- c# - 转换泛型类型以构建有效的 Linq 表达式
- python - kivy中的动态转换图像
- amcharts - 如何检查强制定向节点是否折叠
- apache - 如果使用 htaccess 给出特定 URL,则重定向