#amazon-web-services #boto3
#amazon-web-services #boto3
Вопрос:
Я представляю что-то вроде этого… существует ли метод, который служит аналогичной цели? Это поможет мне быстро учиться.
import boto3
session = boto3.Session(profile_name='my-cli-profile', region_name='us-east-1')
cf = session.resource('cloudformation')
print (cf.describe_attributes())
print (cf.describe_methods())
Комментарии:
1. Почему вы спрашиваете? Если вам нужен программный список вызовов API, вы могли бы извлечь его из проекта botocore .
2. на данный момент я просто изучаю boto3 SDK и методы, которые он поддерживает. Использование записной книжки jupyter для постепенного продвижения по мере того, как я узнаю о новом ресурсе или клиенте. Вместо того, чтобы переключаться между jupyter и сайтом документации boto3, я подумал, что было бы полезно получить доступ к документации программно. не могли бы вы любезно указать, как я мог бы получить программный доступ к документации botocore?
Ответ №1:
Вы могли бы использовать стандартную функцию dir в Python. Например:
print(dir(cf))
выдает:
['Event', 'Stack', 'StackResource', 'StackResourceSummary', '__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'create_stack', 'get_available_subresources', 'meta', 'stacks']
Также существует vars:
print(vars(cf))
который дает:
{'meta': ResourceMeta('cloudformation', identifiers=[])}
Комментарии:
1. Спасибо @Marcin — сегодня я узнал кое-что новое, хотя, похоже, по какой-то причине он не предоставляет все свойства или методы этого объекта. рассмотрим подробнее.
2. @Zoltar Нет проблем. Можете ли вы уточнить, какие методы
dir
не перечислены?dir
является основным инструментом для проверки объектов в Python.