Я работаю в скрипте Python (окна расположены), чтобы удаленно выполнить (другой) скрипт на сервере Linux.Мне нужно изменить каталог и сохранить состояние для выполнения сценария, и после исследования я обнаружил, что помощь фабрики может решить проблему.Однако он сталкивается с ошибкой Pylint:
E1129:Context manager 'generator' doesn't implement __enter__ and __exit__.and
Нашел некоторые комментарии к этой проблеме, такие как здесь , однако я не понимаю, не знаю, что происходит и как решить.Насколько я понял, cd фабрики контекстного менеджера работает вместе с оператором "with" , многие примеры выглядят как мой код, мало кто сообщает о решении этого поведения, или я новичокне понял.Я использую VSCode в качестве IDE, Python 3.7 и Fabric3.Надеюсь, вы можете помочь мне прояснить, что происходит.Спасибо!
Это код, который я сейчас использую:
from fabric.api import cd, run, task, run, env
from fabric.context_managers import cd
env.hosts = ['xxx@server.domain.com:22']
env.password = ['myp@ss']
DIR = 'elfar/elfar'
def go_to_script():
with cd(DIR):
run("ls")