#python #list #function #class #pytest
#питон #Список #функция #класс #пытест
Вопрос:
Я новичок в python и обнаружил проблему. Я пытаюсь создать программу, которая объединит 2 класса. После создания этого я хочу написать тесты. И у меня есть проблема. Вместо того, чтобы писать в моей функции:
states = [ state("united"), state("not-united"), state("different") ]
Я хочу сделать это в тестах python (изменение данных будет намного проще). Но на данный момент я не могу удалить его из функции и скопировать в тесты python, потому что в моей программе есть ссылки на состояния: list_of_name_of_states=[state.info() for state in states]
Есть ли какая-либо возможность, например, создать пустой список «состояний» и вставить туда данные с помощью тестов? Весь мой код:
class state: def __init__(self,name): self.name = name def info(self): return self.name class mulit_state: def __init__(self,list): self.list = list list_of_name_of_states=[state.info() for state in states] self.list_of_name_of_states = list_of_name_of_states def create_a_dict(self): dict = {} for (element,num) in zip(self.list_of_name_of_states,self.list): dict[element] = num return dict states = [ state("united"), state("not-united"), state("different") ] gen = mulit_state([1,2,3]) print(gen.create_a_dict())
Другими словами, я не хочу вводить данные сейчас. Я хочу сделать это в pytest.