@djangoproject · Post #155 · 04.09.2016 г., 12:23
https://anthony-zhang.me/blog/python-bound-methods/ when & why we use @#staticmethod
Hashtags
TGINSIGHT SIMILAR POSTS
Изходен канал @clockstackwheels · Post #65 · 12.07
Попробовал полетать на новом дроне. Этот дрон — шаг от простого пилотирования к более сложному, но дающему больше возможностей и более динамичную картинку. Обычный дрон ожидает от пилота направление и скорость движения, об остальном заботится компьютер: сам рассчитывает углы и частоту вращения моторов, корректирует положение по GPS, использует детекторы препятствий и так далее. В съёмке с такого дрона тоже есть свои сложности — например, очень многие пилоты не умеют снимать без рывков по рысканию. Даже в недавней новости про самоходную океаническую посадочную платформу Илона Маска съёмки с дрона сделаны плохо, а пилот явно не обладал достаточным опытом. Тем не менее, на обычных дронах быстро упираешься в возможности по движениям, и дальнейшее расширение уровня интересности происходит, например, за счёт съёмок самых редких и отдаленных мест, которые даже с земли смотрятся круто. Если бы я был безработным миллиардером, не вылезающим из путешествий, то обычного дрона мне было бы более чем достаточно. Но при жизни обычного смертного за 5 лет съёмок захотелось чего-то нового. Поэтому я стал исследовать направление FPV — то есть First Person View. Это те ребята, которые пролетают под поездами и маневрируют внутри заброшек. С такого дрона можно снять крутое динамичное видео даже в довольно обычном месте, но управление гораздо сложнее: компьютер за вас почти ничего не решает, пилот сам определяет углы и скорости, поэтому требуются долгие тренировки. Вот компания DJI в начале года выпустила DJI FPV — я бы сказал, что это дрон для перехода от первого ко второму. Тут есть и полностью компьютерный и полностью ручной режим. И в целом дрон совмещает в себе некоторые черты двух миров. Изображение передаётся прямо в очки — и это сильно меняет ситуацию, потому что гораздо лучше понимаешь местоположение коптера и расстояния до объектов. Можно летать гораздо смелее. Плюс, выше скорость и нет коррекции крена, видео получаются более «самолетные». Дополнительно я взял джойстик, позволяющий управлять наклонами, и мне после него не хочется возвращаться обратно к скучному пульту (хотя самый сложный режим управления для профи требует всё-таки пульт). В целом сильное смещение в сторону индивидуальных ощущений «как-будто это я сам летаю», а не «полетал для последующего видео». Всерьёз иногда хочется запустить в воздух дрон просто для осмотра местности с высоты, а не для записи. Ниже пока что самый нубский тестовый полет. Буду совершенствоваться. #drone https://youtu.be/Lv0LYu-PGNg
Hashtags
Търсене: #staticmethod
@djangoproject · Post #155 · 04.09.2016 г., 12:23
https://anthony-zhang.me/blog/python-bound-methods/ when & why we use @#staticmethod
Hashtags
@djangoproject · Post #593 · 13.04.2018 г., 19:48
@#classmethod vs @#staticmethod vs "plain" methods What's the difference? class MyClass: def method(self): """ Instance methods need a class instance and can access the instance through self. """ return 'instance method called', self @classmethod def classmethod(cls): """ Class methods don't need a class instance. They can't access the instance (self) but they have access to the class itself via cls. """ return 'class method called', cls @staticmethod def staticmethod(): """ Static methods don't have access to cls or self. They work like regular functions but belong to the class's namespace. """ return 'static method called' # All methods types can be # called on a class instance: »> obj = MyClass() »> obj.method() ('instance method called', <MyClass instance at 0x1019381b8>) »> obj.classmethod() ('class method called', <class MyClass at 0x101a2f4c8>) »> obj.staticmethod() 'static method called' # Calling instance methods fails # if we only have the class object: »> MyClass.classmethod() ('class method called', <class MyClass at 0x101a2f4c8>) »> MyClass.staticmethod() 'static method called' »> MyClass.method() TypeError: "unbound method method() must be called with MyClass " "instance as first argument (got nothing instead)"
Hashtags
@djangoproject · Post #385 · 15.07.2017 г., 16:17
# @classmethod vs @staticmethod vs "plain" methods # What's the difference? class MyClass: def method(self): """ Instance methods need a class instance and can access the instance through self. """ return 'instance method called', self @classmethod def classmethod(cls): """ Class methods don't need a class instance. They can't access the instance (self) but they have access to the class itself via cls. """ return 'class method called', cls @staticmethod def staticmethod(): """ Static methods don't have access to cls or self. They work like regular functions but belong to the class's namespace. """ return 'static method called' # All methods types can be # called on a class instance: »> obj = MyClass() »> obj.method() ('instance method called', <MyClass instance at 0x1019381b8>) »> obj.classmethod() ('class method called', <class MyClass at 0x101a2f4c8>) »> obj.staticmethod() 'static method called' # Calling instance methods fails # if we only have the class object: »> MyClass.classmethod() ('class method called', <class MyClass at 0x101a2f4c8>) »> MyClass.staticmethod() 'static method called' »> MyClass.method() TypeError: "unbound method method() must be called with MyClass " "instance as first argument (got nothing instead)" #classmethod#staticmethod
Hashtags
@djangoproject · Post #126 · 31.08.2016 г., 02:13
goo.gl/QkvD2L #staticmethod #Classmethod
Hashtags
@djangoproject · Post #87 · 11.07.2016 г., 11:53
https://docs.python.org/3/library/functions.html#staticmethod #staticmethod(function) Return a #static method for function. A static method does not receive an implicit first argument. To declare a static method, use this idiom: class C: @staticmethod def f(arg1, arg2, ...): ... The @staticmethod form is a function decorator – see the description of function definitions in Function definitions for details. It can be called either on the class (such as C.f()) or on an instance (such as C().f()). The instance is ignored except for its class. Static methods in Python are similar to those found in Java or C++. Also see classmethod() for a variant that is useful for creating alternate class constructors. For more information on static methods, consult the documentation on the standard type hierarchy in The standard type hierarchy. class str(object='') class str(object=b'', encoding='utf-8', errors='strict') Return a str version of object. See str() for details. str is the built-in string class. For general information about strings, see Text Sequence Type — str.
Hashtags