TGTGInsightтелеграм анализLIVE / telegram public index
← Такты, стеки, два колеса

TGINSIGHT SIMILAR POSTS

Намери подобно съдържание

Изходен канал @clockstackwheels · Post #28 · 24.05

Я очень долго не покупал робот-пылесос, несмотря на свою любовь к технологиям. Не шибко верил в эти штуки, да и жил в небольшой квартире с пушистым ковром. Но теперь у нас квартира побольше и почти без порогов, а ещё кот, от которого везде остаётся шерсть. К тому же, рынок неплохо развился за эти годы, индустрия набила шишек, так что я взял Roborock S5 Max. Робот-пылесос, пожалуй, одна из самых по-настоящему умных бытовых технологий нашего времени. Посудомойка и стиральная машина все ещё требуют много дополнительной работы руками, автоматическая глажка вообще ещё в адекватном виде не появилась, 3D принтер тот вообще хочет много внимания... А робот-пылесос — недаром там в названии «робот» — запустил и забыл. S5 Max довольно дорогая модель с лидаром и хорошей программной частью. Он и правда весьма умён, свободно ориентируется в квартире, грамотно строит маршрут и понимает, где находится. В моем случае проблема возникла лишь один раз — пылесос втянул кошачью игрушку, которая застряла во вращающейся щётке. Это, кстати, приучает к порядку: если всякие рюкзаки и тапки ещё могут валяться у стен там и тут, то мелочам на полу делать совершенно нечего — ваши ступни вам потом за это спасибо скажут. В остальном Roborock прекрасно объезжает ножки стульев, перекатывается через провода и заползает на всю глубину под диван и кровать (а это недоступно даже при чистке ручным пылесосом!). При первом запуске робот объезжает всё пространство, куда способен пролезть, и строит карту квартиры, на которой позже можно разметить комнаты, невидимые стены и другие зоны, а затем, по желанию, убирать точечно. Ещё прикольная фишка — детектор ковра: машина понимает, что движется по ворсу, и сама увеличивает мощность всасывания, а затем обратно уменьшает, когда попадает на обычный пол. Но насчёт самой уборки совсем чудес ожидать не стоит. Сильный ручной пылесос тянет лучше, а робот не избавлен от всех проблем своих предков: волосы наматываются на щётку, пылесборник нужно вытряхивать и мыть. Кстати, для волос прямо под крышкой небольшой нож-лезвие, очень практично: взял и обрезал. Я бы сказал так: человек уберёт лучше, но робота вы будете запускать существенно чаще, чем стали бы пылесосить сами. Особенно если квартира большая. 30-метровую студию я в своё время обходил с вертикальным пылесосом за 20 минут. Но квартиру втрое больше — нет уж, пусть машина старается. Из серьезных для меня недостатков я бы выделил три: • Моющий режим конкретно в моей модели — полная ерунда. Он едва протирает поверхность, так что я бы скорее назвал его увлажняющим режимом. Так что не особо нужен в корпусе и контейнер для воды, и пристегивающаяся на липучках тряпка-расходник. • Робот не умеет понимать, что пылесборник заполнен, и как-то предупреждать об этом. А пыли и грязи он находит много, даже если запускать каждый день. Вот бы сам в туалет ездил выбрасывать... • Машина умеет понимать, где ковёр. Но разработчики не догадались сделать функцию «почистить в этой комнате только ковёр». А было бы очень кстати. В остальном однозначно мастхэв, одно из самых полезных вложений денег за последние много лет. #gadgets

Hashtags

Резултати

Намерени 3 подобни публикации

Търсене: #functools

当前筛选 #functools清除筛选
djangoproject

@djangoproject · Post #88 · 11.07.2016 г., 11:54

https://docs.python.org/3/library/functools.html#functools.partialmethod class #functools.partialmethod(func, *args, **keywords) Return a new #partialmethod descriptor which behaves like partial except that it is designed to be used as a method definition rather than being directly callable. func must be a descriptor or a callable (objects which are both, like normal functions, are handled as descriptors). When func is a descriptor (such as a normal Python function, classmethod(), staticmethod(), abstractmethod() or another instance of partialmethod), calls to __get__ are delegated to the underlying descriptor, and an appropriate partial object returned as the result. When func is a non-descriptor callable, an appropriate bound method is created dynamically. This behaves like a normal Python function when used as a method: the self argument will be inserted as the first positional argument, even before the args and keywords supplied to the partialmethod constructor.

djangoproject

@djangoproject · Post #267 · 23.02.2017 г., 13:44

https://www.python.org/dev/peps/pep-0443/ This PEP proposes a new mechanism in the #functools standard library module that provides a simple form of generic programming known as #single_dispatch#generic functions. A generic function is composed of multiple functions implementing the same operation for different types. Which implementation should be used during a call is determined by the #dispatch algorithm. When the implementation is chosen based on the type of a single argument, this is known as #single_dispatch . #overloading

djangoproject

@djangoproject · Post #97 · 11.07.2016 г., 12:18

https://docs.python.org/3/library/asyncio-eventloop.html #Calls Most #asyncio functions don’t accept keywords. If you want to pass #keywords to your callback, use #functools.partial(). For example, #loop.#call_soon(functools.partial(print, "Hello", flush=True)) will call print("Hello", flush=True). #Note functools.partial() is better than lambda functions, because asyncio can inspect functools.partial() object to display parameters in debug mode, whereas lambda functions have a poor representation. BaseEventLoop.call_soon(callback, *args) Arrange for a callback to be called as soon as possible. The callback is called after call_soon() returns, when control returns to the event loop. This operates as a FIFO queue, callbacks are called in the order in which they are registered. Each callback will be called exactly once. Any positional arguments after the callback will be passed to the callback when it is called. An instance of asyncio.Handle is returned, which can be used to cancel the callback. Use functools.partial to pass keywords to the callback. BaseEventLoop.call_soon_threadsafe(callback, *args) Like call_soon(), but thread safe. See the concurrency and multithreading section of the documentation.