Я пытаюсь переписать код javascript в Python. Это создает некоторые проблемы, так как я довольно новичок в python, но это хороший экзамен, который я считаю.Динамические методы Python
Во всяком случае, проблема под рукой, что мне нужно динамические методы объекта, которые определены где-нибудь еще ... (я знаю, как это звучит, но терпите меня на секунду)
Основном есть Плитка объект, который может быть несколько типов плитки, но вместо того, чтобы эти типы степени основной плитки опротестовать выбор был сделан, чтобы поставить функциональность в некий массив,
tileTypes = {
1: {
color: red,
func: dynamic_function(){
//code here
}
},
2: {
color: green,
func: dynamic_function(){
//other code here
}
},
}
var Tile = function(type)
{
this.color = tileTypes[type].color
this.func = tileTypes[type].func
}
(код реальной жизни намного более крупный, чем это, но в качестве примера служит его назначение)
Я знаю, что это не самый приятный код (он чувствует себя действительно странно, как это), но он очень динамичен, и новые типы могут быть добавлены очень быстро, поэтому я прощаю.
Однако я не знаю, как это сделать в python.
ПРИМЕЧАНИЕ: Я, скорее всего, не буду использовать его, а вместо этого использую какое-то сопоставление от идентификатора типа к классам или что-то в этом роде, но мне очень любопытно, возможно ли это сделать так)
Позор нет никакого способа определения реальной функции внутри dictonairy ... Ну хорошо, я думаю, это ближе всего :) – Johan