python - 获取一个 25x2 数组,如下所示(带有坐标的排序列表)
问题描述
我的目标:得到一个像下面这样的 25x2 数组(一个带有坐标的排序列表)
0 0
0 1
0 2
0 3
0 4
1 0
1 1
..
..
4 3
4 4
我的(失败的)解决方案:
import numpy as np
n=5
lis=np.zeros((n*n,2))
for i in range(n):
for j in range(n):
print(i,j) # This prints just what I want to have in the array
lis[j,0]=i
lis[j,1]=j
输出:
array([[4., 0.],
[4., 1.],
[4., 2.],
[4., 3.],
[4., 4.],
[0., 0.],
[0., 0.],
....
解决方案
行号只是j
. 它必须在每次迭代时增加 1,即使在循环的下一次迭代中j
返回。0
i
for i in range(n):
for j in range(n):
lis[i*n + j, 0] = i
lis[i*n + j, 1] = j
另一种方法是在 范围内循环n*n
,然后使用除法和余数计算索引。
for i in range(n*n):
lis[i, 0] = i // n
lis[i, 1] = i % n
推荐阅读
- c# - 如何在设置属性之前将属性绑定到我操作的 xaml?
- bash - 如何为 .bashrc 文件添加别名?
- powershell - 在 Windows 10 上安装 Active Directory PowerShell 模块
- angular - 在 mat-select angular 中禁用时如何隐藏下划线
- javascript - 无法加载类型为“模块”的脚本
- powershell - 使用 PowerShell 将电子邮件从一个文件夹移动到另一个文件夹
- javascript - Codeigniter 验证可防止显示引导模式。我该如何解决?
- html - 如何在 VSTS 中发布 html 报告
- python - 使用 http.server 从 python 脚本显示动态网页
- javascript - 调整窗口大小后如何使图像重新定位?