@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 #113 · 27.12
Всегда мечтал быть тем чуваком, которому присылают тестовые версии устройств на зацен, ещё до поступления в продажу. И вот Сбер таки прислал. Год назад я писал о выходе SberPortal — умной колонки с экраном. Тогда казалось, что акцент у Сбера именно такой — обязательное наличие экрана даже при голосовом управлении. Но сейчас они выпустили voice-only устройство: SberBox Time. Нет, его всё ещё можно подключить к телевизору, но это не обязательно, и по факту колонка является чем-то средним между большой и маленькой Яндекс Станциями, с уклоном в большую: и звук помощнее, и HDMI есть. Устройство пока не продаётся, но некоторым разработчикам под Сбер выслали демонстрационные экземпляры. Стоит сразу отметить любопытную дизайнерскую находку — аналоговые часы вместо дисплея. Находка именно что любопытная. По факту сугубо на мой взгляд часы не являются ни шибко красивыми, ни тем более удобными. Определять по ним время тяжело, а из-за матового стекла лично у меня постоянно возникает желание настроить резкость. Однако, сама мысль скрещивать хайтек с чем-то более конвервативным звучит привлекательно. Возможно, я становлюсь старым, а может, просто устал от повсеместной цифровизации всего вокруг, но даже при субъективно спорном дизайне часики вполне приятно разместились на стеллаже. Впрочем, колонка пока что сырая — ложные срабатывания, неопределённо скачущая громкость, ошибки в ответах. К счастью, это всё исправляется апдейтами софта, а Сбер за прошедший год показал себя очень внимательным в вопросе фикса багов, и опередил здесь по скорости всех конкурентов. Посмотрим, что из этого выйдет. Прикольная мелочь: на офсайте SberBox Time предлагают скачать модели для 3D-печати и "надеть" на колонку всякие ушки, рожки, плавники, крылья итд. Я сначала подумал, что это полный бред, но для интереса распечатал, и надо сказать очень мило вышло, даже мне взрослому не хочется снимать, а уж дети то вообще должны быть в восторге (известно, что дети составляют значительную долю среди пользователей умных колонок). #gadgets
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