Я создаю класс для расчета цилиндра, и метод вызывает у меня проблему - PullRequest
0 голосов
/ 21 июня 2020

Я создавал программу для вычисления кучи геометрических c фигур, и я получил эту ошибку при запуске кода, приведенного ниже:

    def surface_area(self):
    ^
SyntaxError: invalid syntax

вот код:

class Cylinder():
    def __init__(self, radius, height):
        self.radius = radius
        self.height = height
        
    def volume(self):
        return pi * (self.radius ** 2) * self.height
    
    def diameter(self):
        volume = pi * (self.radius ** 2) * self.height
        return 2 * sqrt(self.volume / (pi * self.height)
                        
    def surface_area(self):
        return (2 * pi * self.radius * self.height) + (2 * pi * (self.radius ** 2))
                        
    def base_area(self):
        return pi * self.radius ** 2
    
    def lateral_surface_area(self):
        return 2 * pi * self.radius * self.height

, если кто-то может помочь, это будет здорово.

Ответы [ 3 ]

3 голосов
/ 21 июня 2020

В вашем коде отсутствует скобка

def diameter(self):
    volume = pi * (self.radius ** 2) * self.height
    return 2 * sqrt(self.volume / (pi * self.height)
#                  ^               ^               ^       ^
#                  |             open 2         close 2    |
#                open                                open never closed
1 голос
/ 21 июня 2020

Это простая ошибка, в вашей функции diameter в последней строке отсутствует скобка, см. return 2 * sqrt(self.volume / (pi * self.height), она должна быть return 2 * sqrt(self.volume / (pi * self.height)).

Обратите внимание на вторую скобку в конце.

0 голосов
/ 21 июня 2020

Вы забыли закрывающую скобку здесь, в строке 11

return 2 * sqrt(self.volume / (pi * self.height)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...