考虑一个 100X100 阵列。
i) 在这样的数组中生成一个包含数千个随机位置的数组,例如 (3,75) 和 (56, 34)。
ii) 计算您的一个随机位置在任何(直)边缘的 15 像素范围内的频率。
我正在尝试做上述问题以帮助我学习编程语言 Python,我是编程新手。
这是我到目前为止所得到的:
from __future__ import division
from pylab import *
import math as m
from numpy import *
from random import randrange
N = 3000
coords_array = array([randrange(100) for _ in range(2 * N)]).reshape(N, 2)
这将创建 N 个随机位置的数组,并且不,我正在尝试创建一个循环,如果 x>85 或 y>85 或 x<15 或 y<15,则将 1 附加到空列表,然后将零附加到如果 x 或 y 是其他任何东西,则相同的空列表。然后我会找到列表的总和,这将是我对有多少随机位置落在边缘内的计数。
这是我想做的事情:
coordinate=coords_array[x,y]
b=[]
def location(x,y):
if x>85 or y>85:
b.appnend(1)
if x<15 or y<15:
b.append(1)
else:
b.append(0)
print b
print x
但我无法将数组分配为 x 和 y 变量。我希望能够将随机坐标集的每一行分配为 x,y 对,以便我可以在循环中使用它。
但我不知道该怎么做!
请问有人可以告诉我怎么做吗?
谢谢