Конкретное имя папки pyvmomi

Борьба с захватом ООП и пывмоми в целом. У вас есть вопрос о том, как назвать конкретную папку по имени - кажется, что имена объектов могут быть папками или виртуальными машинами, и вызов hasattr - лучший способ их различить?

Кроме того, когда я хочу вызвать содержимое определенной папки, я устанавливаю переменную с именем папки и перебираю каждый объект, проверяя совпадение, разве нет лучшего способа, например, вызова конкретного объекта и имя папки? Я не вижу, чтобы это сработало. Вот что у меня сейчас есть:

vmfolder = datacenter.vmFolder
vmfolderList = vmfolder.childEntity
folder = "FooFolder"
for i in vmfolderList:
    try:
        folderName = i.name
        if folderName == folder:
            vmfolder = i
            print(f"Working in folder: {folderName}")
    except:
        pass

То, что у меня есть сейчас, не кажется слишком питонным. Я писал код несколько лет назад, но он был полностью процедурным, и все дело в объекте / атрибуте - это борьба - если кто-то порекомендует хороший учебник или ресурс, это будет оценено. Я чувствую, что как только я преодолею это препятствие, я смогу взять любой SDK и работать с ним.

1 ответ

Вместо тестирования с использованием hasattr я бы ожидал, что объекты папок и виртуальных машин будут другого типа. Проверка на тип является полностью питонической.

Другие вопросы по тегам