Python 查找每个角度的x和y坐标
我正试图编写一些代码来找到卫星在轨道上的坐标,但我目前正在尝试只做一个圆,在这个圆上忽略重力等,并且已经给出了半径。我已经尝试过这个代码,但循环不起作用,请帮助Python 查找每个角度的x和y坐标,python,math,physics,Python,Math,Physics,我正试图编写一些代码来找到卫星在轨道上的坐标,但我目前正在尝试只做一个圆,在这个圆上忽略重力等,并且已经给出了半径。我已经尝试过这个代码,但循环不起作用,请帮助 import math r = 5 angle = 0 while angle <= 360: angle = math.radians(angle) x_coord = math.sin(angle)*r y_coord = math.cos(angle)*r print ("Posi
import math
r = 5
angle = 0
while angle <= 360:
angle = math.radians(angle)
x_coord = math.sin(angle)*r
y_coord = math.cos(angle)*r
print ("Position [",x_coord,y_coord,"]")
angle +=1
导入数学
r=5
角度=0
当执行行angle=math.radians(angle)
时,角度,这将替换上一行检查的相同angle
变量的值-因此,由于angle
永远不会高于360,循环将永远不会结束
我的建议是在将变量转换为弧度时更改其名称,这样就不会覆盖其值,例如:angle\u radians=math.radians(angle)
。因此,您还必须更改sin
和cos
以使用新变量。当执行行angle=math.radians(angle)
时,这将替换上一行检查的相同angle
变量的值-因此,由于角度
永远不会高于360,因此循环将永远不会结束
我的建议是在将变量转换为弧度时更改其名称,这样就不会覆盖其值,例如:angle\u radians=math.radians(angle)
。因此,您还必须更改sin
和cos
以使用新变量。首先,正如@Random所指出的,您需要为angle=math.radians(angle)
使用不同的变量名。例如,angle\u radians
第二,当您使用print
时,需要将x\u-coord
和y\u-coord
转换为字符串:str(x\u-coord)
和str(y\u-coord)
试试这个:
import math
r = 5
angle = 0
while angle <= 360:
angle_radians = math.radians(angle)
x_coord = math.sin(angle_radians)*r
y_coord = math.cos(angle_radians)*r
print ("Position [",str(x_coord),str(y_coord),"]")
angle +=1
导入数学
r=5
角度=0
首先,正如@Random所指出的,当角度时,需要为angle=math.radians(angle)
使用不同的变量名。例如,angle\u radians
第二,当您使用print
时,需要将x\u-coord
和y\u-coord
转换为字符串:str(x\u-coord)
和str(y\u-coord)
试试这个:
import math
r = 5
angle = 0
while angle <= 360:
angle_radians = math.radians(angle)
x_coord = math.sin(angle_radians)*r
y_coord = math.cos(angle_radians)*r
print ("Position [",str(x_coord),str(y_coord),"]")
angle +=1
导入数学
r=5
角度=0
虽然答案已经指出了这里的问题,但将来请在一段代码的上下文中指定“不起作用”的含义。虽然答案已经指出了这里的问题,但将来请在一段代码的上下文中指定“不起作用”的含义。