我正在用这个概念解决一个问题:这是一间教室,我必须用一个名字替换一个空座位,但以一种特定的方式:它被替换在最后一排,从右到左。如果教室满了,它会显示一条信息,没有空位。
我不知道如何按照问题所说的顺序替换一个可用的座位。
import numpy as np
classroom1 = np.array([["Martha", "Available"],
["Max", "Anahi"],
["Available", "Available"],
["Alexis", "Rigel"]])
到目前为止,我可以手动更换我选择的座位,但不是以问题陈述的方式。例如:
classroom1[0,1] = "Alex"
print(classroom1)
[["Martha", "Alex"],
["Max", "Anahi"],
["Available", "Available"],
["Alexis", "Rigel"]]
但我还是想不出怎么根据问题来解决,我不知道怎么解决。
3条答案
按热度按时间yfjy0ee71#
代码:-
输出:-
dxxyhpgq2#
这是你要找的吗?
输出:
hsgswve43#
我们可以使用反向索引或负索引来解决这个问题。使用正/正索引时,你可以从头到尾遍历一个数组。但是使用反向索引时,你使用“-”号作为索引,它会反向遍历。
考虑以下示例:
所以这两条指令都将输出'c'需要记住的一点是,在倒排索引中,我们从-1开始,所以如果要输出'g',必须传递
x[-1]
**现在回到原来的问题:**您有一个二维数组,这意味着您必须传递两个负索引来执行所需的修改
classroom[子数组索引][子数组内元素的索引]
考虑另一个例子:
假设我们想要更新索引2处数组中索引0处的座位,那么我们必须执行反向索引,如下所示:
型