AttributeError: у объекта 'str' нет атрибута 'typecode'
Я пытаюсь использовать VIProperty в pysphere, но получаю , что объект 'str' не имеет атрибута 'typecode'.
Код:
for h, mor in server.get_hosts().items():
if mor == 'xxx.com':
prop = VIProperty(server, mor)
Ошибка:
Traceback (most recent call last):
File "teardown.py", line 29, in <module>
prop = VIProperty(server, mor)
File "/usr/local/lib/python2.7/dist-packages/pysphere/vi_property.py", line 38, in __init__
self._type = obj.typecode.type[1]
AttributeError: 'str' object has no attribute 'typecode'
1 ответ
Работает правильно, потому что тип строки "mor" и объект 'str' не имеют атрибута 'typecode'.
class VIProperty(object):
def __init__(self, server, obj):
self._server = server
self._obj = obj
self._values_set = False
self._type = obj.typecode.type[1]
Ваш метод вызова:
for h, mor in server.get_hosts().items():
if mor == 'xxx.com':
print type(mor) # <<<< 'str'
prop = VIProperty(server, mor)
Попробуй это:
hosts = server.get_hosts()
for hmor, hname in hosts.items():
if hname == 'xxx.com':
p = VIProperty(server, hmor)