1

Тема: Допоможіть з завданням з class і _int_

Ось сама умова:
Створіть клас Dog з атрибутом класу age_factor, що дорівнює 7. Створіть __init__, який приймає значення для віку собаки. Потім визначте метод human_age, який повертає рядок з віком собаки в людському еквіваленті, але округленим до сотих. Також не забудьте додати метод валідації переданого параметра віку під назвою validate. ВВік повинен бути int або float. В іншому випадку, має викликатися належне виключення в логіці init.

2

Re: Допоможіть з завданням з class і _int_

Порушуєте п. 3.5 Правил
Загалом усе погано.

3

Re: Допоможіть з завданням з class і _int_

Якщо потрібно.
Я ще чайник в патоні, тому прошу не бити :3

class Dog(object):

    age_factor = 7

    def __init__(self, age_dog):

        self.age_dog = age_dog

    def human_age(self):

        human_age =  self.age_dog * self.age_factor

        return human_age


dog = Dog(10)
age = dog.human_age()
print(age)

4 Востаннє редагувалося ur_naz (06.05.2021 17:19:51)

Re: Допоможіть з завданням з class і _int_

koala написав:

Порушуєте п. 3.5 Правил
Загалом усе погано.

п.3.5 правил не можливо порушити... там нема чого порушувати.
Приклад п.з.5 який можна порушити:
"При створенні теми потрібно викласти свої напрацювання".
або
"Теми без будь-яких напрацювань повинні ігноруватись учасниками форуму, а модератори повинні перенести їх в кошик для сміття.
Тож п.3.5 є лише джерелом коррупції

5

Re: Допоможіть з завданням з class і _int_

не треба ніяких інвалідів, достатньо
https://www.w3schools.com/python/ref_keyword_assert.asp

6

Re: Допоможіть з завданням з class і _int_

Якщо потрібно.
Я ще чайник в патоні, тому прошу не бити :3
Незнаю як видаляти повідомлення, а також не дочитав умову :D

import sys

class Dog(object):

    age_factor = 7

    def __init__(self, age_dog):
        try:
            if float(age_dog)%1 != 0:
                self.age_dog = float(age_dog)
            else:
                self.age_dog = int(age_dog)

        except Exception as e:
            print('Введіть коректне значення!')
            sys.exit(0)

    def human_age(self):

        human_age = round( float(self.age_dog) * float(self.age_factor), 2)
        return human_age

    def validate(self):

        if self.age_dog <= 0:
            print('Введено не коректний вік!')
            sys.exit(0)

n = input('Введіть вік собаки: ')

dog = Dog(n)
age = dog.human_age()
dog.validate()

print(age)

7

Re: Допоможіть з завданням з class і _int_

if float(age_dog)%1 != 0:
                self.age_dog = float(age_dog)
            else:
                self.age_dog = int(age_dog)

погано, це взагалі не те

8

Re: Допоможіть з завданням з class і _int_

Якщо потрібно.
Я ще чайник в патоні, тому прошу не бити :3
Незнаю як видаляти повідомлення, а також не дочитав умову :D

import sys

class Dog(object):

    age_factor = 7

    def __init__(self, age_dog):

        try:
            self.age_dog = float(age_dog)
        except Exception as e:
            print('Введіть коректне значення!')
            sys.exit(0)

    def human_age(self):

        human_age = self.age_dog * self.age_factor
        human_age = round(human_age, 2)

        if human_age%1 == 0:
            human_age = int(human_age)

        return human_age

    def validate(self):

        if self.age_dog <= 0:
            print('Введено не коректний вік!')
            sys.exit(0)

n = input('Введіть вік собаки: ')

dog = Dog(n)
age = dog.human_age()
dog.validate()

print(age)