profile
[/banner_gorizont_adaptive]
Размещено 3 месяца назад по предмету Информатика от ladikaleksej44

import logging

logging.basicConfig( level=logging.DEBUG,
filename='kjhgfrtyhjk.log',
filemode='w',
format='LOG DATA: %(asctime)s - %(levelname)s - %(message)s',)

a= '5'
b= 2

result:int
flag = False

try:
result = a = b
except BaseException as ex:
flag = True

logging.exception(ex)
finally:
if flag:
print(f'{a} || {b} are nit degit')
else:
print(f'{a} + {b} = {result}')

Продовжити завдання виконуване в классі, а саме:
1) Створити класс Calculation.
2) Класс Calculation має метод __call__ для арифметичних дій +, -, /, * та всі вилючення логує до текстового файлу.
3) Додати метод для перевірки типу отриманих данних і можливості їх конвертувати до int, float. Всі виключення конвертації логувати.
4) basicConfig налаштувати на дозапис файлу.

  1. Ответ на вопрос
    Ответ на вопрос дан mat65102010

    Объяснение:

    import logging

    class Calculation:

    def __init__(self):

    logging.basicConfig(level=logging.DEBUG,

    filename='kjhgfrtyhjk.log',

    filemode='a',

    format='LOG DATA: %(asctime)s - %(levelname)s - %(message)s',)

    def __call__(self, operation, a, b):

    result = None

    flag = False

    try:

    if operation == '+':

    result = a + b

    elif operation == '-':

    result = a - b

    elif operation == '*':

    result = a * b

    elif operation == '/':

    result = a / b

    else:

    raise ValueError("Invalid operation")

    except Exception as ex:

    flag = True

    logging.exception(ex)

    finally:

    if flag:

    print(f'Error occurred while performing {operation} operation with {a} and {b}')

    else:

    print(f'{a} {operation} {b} = {result}')

    def check_and_convert(self, data):

    try:

    converted_data = int(data)

    print(f"Successfully converted {data} to int: {converted_data}")

    return converted_data

    except ValueError as ex:

    try:

    converted_data = float(data)

    print(f"Successfully converted {data} to float: {converted_data}")

    return converted_data

    except ValueError as ex:

    logging.exception(ex)

    print(f"Error occurred while converting {data} to int or float")

    calc = Calculation()

    calc('+', 5, 2)

    calc('-', '5', 2)

    calc.check_and_convert('10')

    calc.check_and_convert('10.5')

    calc.check_and_convert('abc')

Не тот ответ на вопрос, который вам нужен?
Найди верный ответ
Самые новые вопросы
tegysigalpa2012
Русский язык - 5 лет назад

Помогите решить тест по русскому языку тест по русскому языку «местоимение. разряды местоимений» для 6 класса 1. укажите личное местоимение: 1) некто 2) вас 3) ни с кем 4) собой 2. укажите относительное местоимение: 1) кто-либо 2) некоторый 3) кто 4) нам 3. укажите вопросительное местоимение: 1) кем-нибудь 2) кем 3) себе 4) никакой 4. укажите определительное местоимение: 1) наш 2) который 3) некий 4) каждый 5. укажите возвратное местоимение: 1) свой 2) чей 3) сам 4) себя 6. найдите указательное местоимение: 1) твой 2) какой 3) тот 4) их 7. найдите притяжательное местоимение: 1) самый 2) моего 3) иной 4) ничей 8. укажите неопределённое местоимение: 1) весь 2) какой-нибудь 3) любой 4) этот 9. укажите вопросительное местоимение: 1) сколько 2) кое-что 3) она 4) нами 10. в каком варианте ответа выделенное слово является притяжательным местоимением? 1) увидел их 2) её нет дома 3) её тетрадь 4) их не спросили

Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.