Результаты поиска по запросу "magic-methods"
Назначение (вместо определения) магического метода __getitem__ нарушает индексирование [дубликат]
На этот вопрос уже есть ответ здесь:Почему динамическое добавление метода `__call__` к экземпляру не работает? 2 ответаУ меня есть класс-оболочка, похожая на...
декларация и она должна работать как положено.
я не полностью ошибаюсь,__get а также__set методы должны позволять перегрузку →get а такжеset. Например, следующие операторы должны вызывать__get метод: echo $foo->bar; $var = $foo->bar;И следующие должны использовать__set метод: $foo->bar = ...
, который работает в направлении, противоположном тому, что вы пытаетесь сделать.
аюсь, чтобы мой класс выглядел как другой объект, чтобы обойти ленивую проверку типов в пакете, который я использую. Более конкретно, я пытаюсь, чтобы мой объект отображался как экземпляр другого объекта (tuple в моем случае) когда на самом деле ...
; он выполнит операцию замены для всех тех парных комбинаций строка-столбец, которые получены вышеуказанным кортежем.
аю сnumpy и копаться в документации, и я столкнулся с некоторой магией. А именно я говорю оnumpy.where(): >>> x = np.arange(9.).reshape(3, 3) >>> np.where( x > 5 ) (array([2, 2, 2]), array([0, 1, 2]))Как они достигают внутренне, что вы можете ...
@ups: метаклассы определяются по-другому в Python3. Я добавил код, чтобы показать, как, выше.
не нужно изменить, чтобы сделать эту работу? class A: @staticmethod def __getitem__(val): return "It works" print A[0] Обратите внимание, что я звоню__getitem__ метод по типуA.
не принимает никаких аргументов.
я есть фиктивный объект в тесте. Реальный объект, PageRepository, реализует магический метод с использованием __call (), поэтому, если вы вызываете $ pageRepository-> findOneByXXXX ($ value_of_field_XXXX), он будет искать в базе данных записи, ...
вместо $ foo-> getObjectvariable () -> somemethod`
аюсь сделать такие функции, какempty() а такжеisset() работать с данными, возвращаемыми методами. Что у меня так далеко: abstract class FooBase{ public function __isset($name){ $getter = 'get'.ucfirst($name); if(method_exists($this, $getter)) ...
@JM Он объявлен закрытым, так что он не объявлен, если вы используете его вне класса
ли проверить, является ли переменная статической в PHP? Я пытаюсь создать волшебный метод__get это также смотрит на статические переменные. Я нахожу этоproperty_exists() возвращает true, когда переменная тоже статическая. Но мне нужно будет ...
Полностью согласен, многие другие языки перевешивают Python здесь.
методы необходимо переопределить / реализовать при создании пользовательских классов, сортируемых и / или хэшируемых в python? На какие ошибки стоит обратить внимание? Я печатаюdir({}) в мой интерпретатор, чтобы получить список методов ...