我们如何在数组索引中使用“and”运算符?

我找到了一个使用A[i][j] += min(A[i - 1][j and j - 1:j + 2]) 我尝试类似实现的代码,如下所示,这给了我意想不到的结果。谁能解释一下?我无法理解在这种情况下如何解释“和”。


a = [1,2,3,4,5,6,7,8,9,10,11,12]


print(a[0 and 3:4]) #[1, 2, 3, 4]


print(a[1 and 3:4]) #[4]


print(a[1 and 3:6]) #[4, 5, 6] 


print(a[0 and 3:6]) #[1, 2, 3, 4, 5, 6]


print(a[2 and 3:6]) #[4, 5, 6]

编辑:在 a[0 and 3:4] 它包含从 0 到 3 的元素但如果我使用 a[1 and 3:4] 它只给出第三个元素而我期望元素从 1 到 3


绝地无双
浏览 161回答 2
2回答

MYYA

AND具有比切片:运算符更高的优先级。你的表达方式是,a[0 and 3:4] --> a[(0 and 3):4] --> a[0:4] --> [1, 2, 3, 4]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python