Python函数返回字典?
我是一个Python初学者,遇到了一个我不理解的函数输出。我不能给出所有的代码,因为其中一些是我公司的IP 我基本上是使用一个由我们的开发人员编写的库从数据仓库中提取度量。然后,我想在另一个应用程序中使用这个度量值,以便在获得该值时将其传递给我自己的数据库 我的问题是我不理解我用来实际推断我想要的值的函数的输出 如果有人有更多的Python经验,可以告诉我函数的返回在做什么,我能告诉你的是构建一个dict,但我不完全理解如何以及在哪里。我必须补充一点,这是库中的函数Python函数返回字典?,python,function,return,Python,Function,Return,我是一个Python初学者,遇到了一个我不理解的函数输出。我不能给出所有的代码,因为其中一些是我公司的IP 我基本上是使用一个由我们的开发人员编写的库从数据仓库中提取度量。然后,我想在另一个应用程序中使用这个度量值,以便在获得该值时将其传递给我自己的数据库 我的问题是我不理解我用来实际推断我想要的值的函数的输出 如果有人有更多的Python经验,可以告诉我函数的返回在做什么,我能告诉你的是构建一个dict,但我不完全理解如何以及在哪里。我必须补充一点,这是库中的函数 def get(self,
def get(self, **kwargs):
if 'SchemaName' not in kwargs:
kwargs['SchemaName'] = self.find_schema_by_params(**kwargs)
if 'Stat' in kwargs and kwargs['Stat'] not in MWS.VALID_Stat:
raise MWSException("Incorrect Stat value: %s" % kwargs['Stat'])
if 'Period' in kwargs and kwargs['Period'] not in MWS.VALID_Period:
raise MWSException("Incorrect Period value: %s" % kwargs['Period'])
self._validate_schema(kwargs, MWS.DEFAULT_GET_PARAMETERS)
self._encode_start_time(kwargs)
if 'EndTime' not in kwargs:
if kwargs['StartTime'].startswith('-P'):
kwargs['EndTime'] = '-P00D'
else:
kwargs['EndTime'] = datetime.datetime.utcnow().strftime("%Y-%m-%dT%H:%M:%S.000Z")
return self._mws_action('GetMetricData', **kwargs)['StatisticSeries']
显然,
\u mws\u action()
是一个传递字符串“GetMetricData”和与get方法相同的关键字参数的方法(只做了一些修改)\u mws\u action()
返回一个字典,然后返回该字典的“StatisticSeries”元素
**kwargs
将字典转换为关键字参数或从关键字参数转换为关键字参数。所以你可以打电话给get as
get(SchemaName='schema', Stat='somestat', EndTime="-P00D")
kwargs将是:
{'SchemaName': 'schema', 'Stat':'somestat', 'EndTime':"-P00D"}
不知道你在问什么。它调用
\u mw\u action
方法,从返回的数据中获取“StatisticSeries”值,然后返回该值。您可以通过使用类型(my\u object.my\u method(arguments))
非常感谢您的快速响应,因此,如果我使用循环来迭代kwargs,我应该能够看到值?准确地说。对于kwargs中的k:打印k,kwargs[k],这样我就可以迭代我输入的字典的键:值
,但如何迭代返回的字典?def\u mws\u action(self,action,method='GET',**kwargs):response\u key='%sResponse'%action返回self.api\u调用(method=method,action=action,**kwargs)[回复键]
您帮了大忙,节日快乐