FishHook
что это значит вообще? Какие свойства словаря вы хотите использовать?
Немного поясню ситуацию.
У меня есть конечный автомат, которому на вход подается исходное состояние и объект, если состояние ‘устал’ и объект ‘кровать’, действие ‘спать’, новое состояние ‘бодрый’.
Мне нужно написать тест для проверки, что автомат работает хорошо и переходы совершаются корректно. Для этого я пишу тест в котором задаю через словарь поведение конечного автомата.
list = {
'устал': {
'кровать': {'action': 'спать', 'new_state': 'бодрый'}
}
}Что я хочу. Чтобы не прописывать руками каждый раз входное состояние и объект при инициализации автомата, я хочу брать эти значения из словаря. Тем самым меняя словарь, автоматически менять входные параметры во всех тестах:
Нет так
FMS = StateFSM( 'устал', 'кровать')
Мне сказали сделать примерно вот так. Но это не работает(
FMS = StateFSM(list.keys[0], lion_state_list[0].keys[0])
От меня так руководитель требует. Я не знаю, как это реализовать. Как из словаря взять название ключа и передать его в качестве параметра?
Пробовала через списки. Вот так тоже не подошло. Сказали не то.
states = [ 'устал']
objects = ['кровать']
list = {
states[0]: {
objects[0]: {'action': 'спать', 'new_state': 'голодный'}
}
}
FMS = StateFSM(states[0], objects[0])
Здесь на форуме я хочу понять: Как из словаря взять название ключа и передать его в качестве параметра и возможно ли это?
Я сильно извиняюсь, если не понятно объясняю.
И да вот так. Тоже не то, так как для одного состояния могут быть разные объекты, а для разных объектов в зависимости от состояния разные действия и новые состояния(
list = { states: 'устал', objects: 'кровать', 'action': 'спать', 'new_state': 'голодный'}