我想定义一个没有初始化长度的二维数组,如下所示:
Matrix = [][]
Run Code Online (Sandbox Code Playgroud)
但它不起作用......
我已经尝试了下面的代码,但它也是错误的:
Matrix = [5][5]
Run Code Online (Sandbox Code Playgroud)
错误:
Traceback ...
IndexError: list index out of range
Run Code Online (Sandbox Code Playgroud)
我的错是什么?
我一直试图将一堆线旋转90度(它们一起形成折线).每行包含两个顶点,例如(x1,y1)和(x2,y2).我目前要做的是围绕线的中心点旋转,给定中心点| x1 - x2 | 和| y1 - y2 |.出于某种原因(我不是在数学上非常精明)我无法正确旋转线条.
有人可以验证这里的数学是否正确?我认为它可能是正确的,但是,当我将线的顶点设置为新的旋转顶点时,下一行可能无法从上一行抓取新的(x2,y2)顶点,导致线条不正确地旋转.
这是我写的:
def rotate_lines(self, deg=-90):
# Convert from degrees to radians
theta = math.radians(deg)
for pl in self.polylines:
self.curr_pl = pl
for line in pl.lines:
# Get the vertices of the line
# (px, py) = first vertex
# (ox, oy) = second vertex
px, ox = line.get_xdata()
py, oy = line.get_ydata()
# Get the center of the line
cx = math.fabs(px-ox)
cy = math.fabs(py-oy)
# Rotate line around center …Run Code Online (Sandbox Code Playgroud) 是否有可能在python中编写一个函数,可以旋转任何2d结构,参数只是结构中点的坐标(x,y)?轴,速度和方向将包括其他参数.
根据我的理解,只有通过计算从对称点和轴的点距离才能实现,因此它总是会变化,因此除了由标准形状(三角形,矩形,正方形等)组成的2d结构外是不可能的.
很好的例子将不胜感激.