Replace six.iteritems() with .items()

1.As mentioned in [1], we should avoid using
six.iteritems to achieve iterators. We can
use dict.items instead, as it will return
iterators in PY3 as well. And dict.items/keys
will more readable. 2.In py2, the performance
about list should be negligible, see the link [2].
[1] https://wiki.openstack.org/wiki/Python3
[2] http://lists.openstack.org/pipermail/openstack-dev/2015-June/066391.html

Change-Id: Ida505e3d490159b0b1d6e6e903882c58bc5ffdea
This commit is contained in:
loooosy 2017-04-05 19:36:30 +08:00
parent 4ba42d2903
commit 1e4efa9e9f

View File

@ -18,12 +18,11 @@
# under the License.
from oslo_config import cfg
import six
def recursive_keypairs(d, separator='.'):
# taken from ceilometer and gnocchi
for name, value in sorted(six.iteritems(d)):
for name, value in sorted(d.items()):
if isinstance(value, dict):
for subname, subvalue in recursive_keypairs(value, separator):
yield ('%s%s%s' % (name, separator, subname), subvalue)