Вернуть неправильный тип, как исправить? - PullRequest
1 голос
/ 07 июля 2019

У меня есть вопрос, который я ошибся, поскольку в моем коде указан неправильный тип.

Краткое содержание вопроса:

enter image description here

Первый вопрос, на который я пытался ответить, написан здесь:

Какие два сектора чаще всего путают друг с другом и сколько раз?

0) Дискреционный потребитель
1) Потребительские товары
2) Энергетика
3) Финансы 4) Здравоохранение
5) Промышленность
6) Информационные технологии
7) Материалы
8) Недвижимость
9) Услуги связи
10) Утилиты

Мой код, который я пробовал, выглядит так:

def question_1():
    ans1 = np.array([5, 7])
    num_scen1 = 5
    return ans1, num_scen1

Утверждение утверждения под моим кодом выглядит так:

ans1, num_scen1 = question_1()
assert type(ans1) == list, "Incorrect type"
assert type(ans1[0]) == tuple, "Incorrect type"
assert type(ans1[0][0]) == int, "Incorrect type"
assert type(num_scen1) == int, "Incorrect type"

Мой код вызвал эту ошибку:

enter image description here

Как я могу помочь исправить мой код, чтобы передать утверждение утверждения, имея правильный тип?

1 Ответ

0 голосов
/ 07 июля 2019
  1. функция question_1() возвращает 1-й элемент как тип numpy array, а не list, поэтому мы должны сопоставить его с np.ndarray.

  2. Поскольку здесь мы проверяем type переменных, мы можем предпочесть метод isinstance(), поэтому обновите код, как показано ниже:

    ans1, num_scen1 = question_1()
    assert isinstance(ans1, np.ndarray), "Incorrect Type"
    assert isinstance(ans1[0], tuple), "Incorrect type"
    assert isinstance(ans1[0][0], int), "Incorrect type"
    assert isinstance(num_scen1, int), "Incorrect type"
    
...