Python - 数组切片

时间:2016-08-05 22:13:01

标签: arrays python-3.x object-slicing

我的大学任务。他们让我分析切片操作并解释它。

A = array([[1,2,3],[4,5,6],[7,8,9]])
A[0,arrange(3)<>0]
A[1,arrange(3)<>1]
A[2,arrange(3)<>2]

要分析的操作如下:A[k, arange(n)<>k],其中A是n x n矩阵。

我理解它的方式,第一个k确定矩阵的行。 现在我知道arange(n)创建一个包含n个数字的数组。我不明白的是命令arange(n)<>k。如果我尝试在我的计算机上重现代码,该程序只会告诉我“语法无效”并指向<>

任何人都可以向我解释发生了什么事吗? 谢谢!

2 个答案:

答案 0 :(得分:3)

<>!=的已弃用的同义词,已在Python 3中删除。您的课程不应该使用它,但无论如何它们都在使用它,并且您或我们可以做的不多做到这一点。

您可以为课程使用Python 2口译员,也可以将<>替换为!=。如果更换操作员,将来需要注意其他Python 2/3不兼容性,并手动处理它们;如果你转换口译员,你将需要管理多个口译员。选择取决于你。

答案 1 :(得分:0)

我对Python没那么多,我不知道你的代码是否应该正确运行,但我在提供的代码片段中看到的模式是:

  

获取 k'th 行中的所有元素,不包括该行中的 k'th 元素。

请注意,索引是从0开始的。