You just need a function that converts degrees to radians. Then your function simply becomes:
from math import sin, cos, radians, pi
def point_pos(x0, y0, d, theta):
theta_rad = pi/2 - radians(theta)
return x0 + d*cos(theta_rad), y0 + d*sin(theta_rad)
(as you can see you mixed up sine and cosine in your original function)
(also note the linear angle transformation because angles on compass are clockwise and mathematical angles are counter-clockwise. Also there is an offset between the respective zeroes)
You can also use complex numbers to represent points, which is somewhat nicer than a tuple of coordinates (although a dedicated Point
class would be even more appropriate):
import cmath
def point_pos(p, d, theta):
return p + cmath.rect(d, pi/2-radians(theta))