@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 #157 · 12.01
На рынке удивительная ситуация с этим кризисом чипов: у людей есть деньги и желание купить товар, а у компаний есть производство и желание продать. Но товар не могут сделать и поставить. Кстати, что странно, компании даже в условиях дефицита не повышают официальную цену, хотя именно так капитализм должен был бы в норме решать эту проблему. В итоге, мы получаем паразитическую сторону капитализма — появляются перекупщики, которые делают наценку 50-100% и даже более. С автомобилями (да, новые автомобили тоже внезапно в кризисе) такая перепродажа, вероятно, не очень прокатывает. Но приставки и видеокарты попали под ситуацию очень заметно. В идеале и производителям и легальным магазинам нужно продать товар по возможности сразу целевому пользователю. Как это сделать? Магазины в России в конце прошлого года попробовали анализировать аккаунты покупателей и вручную звонить людям, попавшим под некий профиль (например, если человек купил много геймерских товаров), предлагая им PlayStation 5. Кажется, сработало это не очень хорошо. Во-первых, многие, кто очень хочет, так и остались без приставки. Люди буквально днями и неделями мониторят все возможные сайты в надежде поймать заветную «плойку». Иногда удается, но чаще нет. Во-вторых, магазины всё равно попадают на тех, кто в итоге продаст товар с наценкой. Например, два разных магазина могут продать одному и тому же человеку. Или — так было в моём случае — магазин предложил мне только дисковую версию, я её купил и продал ровно так, чтобы компенсировать наценку на бездисковую, которую на самом деле хотел. Впрочем, я купил бездисковую не у таких потерявших берега перекупщиков, какие обитают в России, а за границей, и наценка была небольшая относительно состояния рынка. И вот здесь привязка устройств к человеку по каким-нибудь идентификационным данным на самом деле могла бы сыграть в плюс. В магазине, кстати, приставку продали только при личной явке и только при предъявлении паспорта, и это после их же звонка с предложением. Но можно пойти дальше: прямо при покупке привязывать аккаунт к конкретной персоне, и так, чтобы его нельзя было отвязать, например, в течение года. Это конечно упрощённая и идеализированная модель, но суть ясна: сделать скорую перепродажу невыгодной или даже невозможной. Год назад казалось, что через год то уж точно приставки для всех будут. Я поэтому тогда и не купил. А в действительности через год стало только сложнее достать. Посмотрим, что будет ещё через год. #life#gadgets
Търсене: #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