var arr = [[],[]];
var si = 5;
var c = 0;
if (arr[si][c] == null)
{
arr[si][c] = {
code : "Test",
};
}
alert(arr[si][c].code);
您好,我正在尝试运行这个示例代码,但我得到一个错误,说未定义的属性"0“不能被调用。
令人尴尬的是,如果我使用数值而不是变量"si“和"c”作为索引,错误就不会出现!
有没有可能在JS中你不能使用变量作为索引?我认为它确实适用于非二维数组。
谢谢并致以最良好的问
我有一个二维数组。第一个维度有固定的大小,我动态地创建第二个维度。e.g
int **arr;
*arr=( int * ) malloc ( X * sizeof ( int )) // X is input from user
我想做的是创建第二个维度,并在它的末尾写入值。
例如,我使用以下命令为arr创建第二维
arr[0]=( int * ) malloc ( 2 * sizeof ( int ))
然后我想在这个第二维中写入值,但不知道索引。许多编程语言都有array.push方法,该方法在不知道数组的索引或长度的情况下将项推入数组的末尾。我如何在C中实现这样的结果?
帮助理解数组的创建:任务是动态地构建一个具有任意数量的度量及其任意深度的数组。输入接收具有任意(n)个元素数的一维数组int arr [] .例如,我们可以创建像int arr= new int[size]这样的一维数组,我们可以创建二维数组int **arr= new int*[size]等等,但是当我们不知道有多少维时,我们如何创建它呢?我刚开始学习C++,所以我不能使用面向对象的编程和向量。
可能重复:
我一直以这种方式编写这部分代码:每当我需要它时,我都使用这个python代码:
for x in range(8):
a.append([])
for y in range(8):
a[x].append(0)
不过,我想知道是否有办法美化这段代码。我的意思是,如何在python中创建一个二维矩阵,并用0填充它呢?
这是为了解决机器学习问题(当然是在Python中)。 我有一个二维数组,行是点的集合,列是这些点的另一个一维数组的索引。 data = [[1,3,2], [3,3,1], [5,1,2]]
# yes there are duplicates in the labels
labels = [2,8,9,8,8,9] 我需要的是创建一个2D数组,它是原始数据数组,但其中的值现在是索引表示的标签中的值。 new_data = [[8,8,9], [8,8,8], [9,8,9]] 显然,我可以用for循环做到这一点。我在这里问,以防numpy或什么东西有一个电话来做这件事。
我想知道如何在Python中声明一个二维数组。 arr = [[]]
arr[0].append("aa1")
arr[0].append("aa2")
arr[1].append("bb1")
arr[1].append("bb2")
arr[1].append("bb3") 前两个赋值工作得很好。但当我试着这么做的时候,arr[1].append("bb1") ,我得到以下错误: IndexError: list index out of range. 我在尝试声明二维数组时做了什么愚蠢的事