Вопросы по теме 'contextmanager'
py.test — как использовать контекстный менеджер в funcarg/fixture
Тесно связаны: Есть ли в python хорошая идиома для использования контекстных менеджеров в настройке/разборке
У меня есть контекстный менеджер, который используется в тестах для исправления времени/часового пояса. Я хочу, чтобы это было в...
6479 просмотров
schedule
19.09.2022
Как использовать сокет в Python в качестве менеджера контекста?
Кажется, что было бы естественно сделать что-то вроде:
with socket(socket.AF_INET, socket.SOCK_DGRAM) as s:
но Python не реализует диспетчер контекста для сокета. Могу ли я легко использовать его в качестве менеджера контекста, и если да, то...
20612 просмотров
schedule
31.12.2023
Fabric: работа с cd() во вспомогательных функциях
В Fabric менеджер контекста cd работает как
with cd("dir"):
run("command")
и команда будет запущена после перехода в каталог dir . Это прекрасно работает, но проблема в том, что используется глобальное состояние. Например,...
296 просмотров
schedule
12.11.2022
Собираем контекстный менеджер Python: загадка
Я озадачен тем, как расположить все, что могут делать менеджеры контекста Python, в соответствующих местах.
Насколько я понимаю, элементы, которые потенциально могут быть использованы при создании диспетчера контекста, включают:
A: то, что...
886 просмотров
schedule
31.03.2024
Менеджер контекста для проверки данных
Я пытаюсь обдумать хорошее решение этой проблемы, и ничего не приходит в голову. В качестве упражнения я пытаюсь создать диспетчер контекста, который будет обрабатывать проверку данных, например:
validation = lambda x: len(x) <= 10
with...
297 просмотров
schedule
14.05.2024
Является ли оператор Python *with* точно эквивалентным блоку try - (except) - finally?
Я знаю, что это широко обсуждалось, но я до сих пор не могу найти ответ, подтверждающий это: является ли оператор with идентичным вызову того же кода в блоке try - (except) -finally, где что угодно один определяет в функции __exit__ контекстного...
5978 просмотров
schedule
13.01.2024
Определить контекстные переменные в поведении Python
Иногда вам нужно определить значения динамически (например, datetime now, случайные строки, случайные целые числа, содержимое файла и т. д.) и использовать их на разных этапах без явного или жесткого кодирования значения.
Итак, мой вопрос...
7123 просмотров
schedule
01.01.2024
Python: как правильно создавать и уничтожать ресурсы с помощью шаблона дескриптора contextmanager
Я реализую создание и уничтожение ресурсов следующим образом:
import weakref
class Context(object):
def __init__(self):
self.resource = object() # sample resource creation
def __del__(self):
self.resource = None #...
212 просмотров
schedule
19.05.2024
Как использовать контекстный менеджер внутри декоратора и как передать объект, созданный в декораторе, в декоративную функцию
У меня есть тестовый класс, который требует очистки в конце. Чтобы убедиться, что пользователь не забудет это сделать, я хочу добавить в класс контекстный менеджер. У меня также есть декоратор, внутри которого я хочу использовать этот менеджер...
686 просмотров
schedule
29.10.2022
__init__ vs __enter__ в контекстных менеджерах
Насколько я понимаю, методы __init__() и __enter__() диспетчера контекста вызываются ровно один раз каждый, один за другим, не оставляя никаких шансов для выполнения какого-либо другого кода между ними. Какова цель разделения их на два метода и...
22447 просмотров
schedule
28.09.2022
TypeError: ожидается объект str, bytes или os.PathLike, а не _io.TextIOWrapper
Я пытаюсь открыть, прочитать, изменить и закрыть файл json, используя пример здесь:
Как добавить ключ-значение к данным JSON, полученным из файла с помощью Python?
import os
import json
path =...
22076 просмотров
schedule
28.11.2023