Помогите понять на что ругается интерпретатор? Синтаксическая ошибка
Ругается на последнюю круглую скобку после буквы t в строке объявления функции: def bezierslopeatt(((bx0,by0),(bx1,by1),(bx2,by2),(bx3,by3)),t):
def bezierslopeatt(((bx0,by0),(bx1,by1),(bx2,by2),(bx3,by3)),t):
ax,ay,bx,by,cx,cy,x0,y0=bezmisc.bezierparameterize(((bx0,by0),(bx1,by1),(bx2,by2),(bx3,by3)))
dx=3*ax*(t**2)+2*bx*t+cx
dy=3*ay*(t**2)+2*by*t+cy
if dx==dy==0 :
dx = 6*ax*t+2*bx
dy = 6*ay*t+2*by
if dx==dy==0 :
dx = 6*ax
dy = 6*ay
if dx==dy==0 :
print_("Slope error x = %s*t^3+%s*t^2+%s*t+%s, y = %s*t^3+%s*t^2+%s*t+%s, t = %s, dx==dy==0" % (ax,bx,cx,dx,ay,by,cy,dy,t))
print_(((bx0,by0),(bx1,by1),(bx2,by2),(bx3,by3)))
dx, dy = 1, 1
return dx,dy
Ответы (1 шт):
Автор решения: Zhihar
→ Ссылка
у меня PyCharm говорит:
File "D:\lessons\python\test2.py", line 1
def bezierslopeatt(((bx0, by0), (bx1, by1), (bx2, by2), (bx3, by3)), t):
^
SyntaxError: invalid syntax
вам надо задавать параметры через запятую, а не в скобках
если вы хотите задать кортеж, то все равно задаете его через запятую, а обращаетесь уже по индексу внутри функции:
def func(obj, t):
sub_obj0 = obj[0]
sub_sub_sub_obj0 = sub_obj0[0]