这个问题在这里已经有了答案:
Iterating over dictionaries using 'for' loops
(13 个回答)
4年前关闭。
我有一个我试图循环的函数,目的是用 ", "
修改这些变量。在他们之后。
def create_merge(address, city, state_province, country, postal_code, contact, state):
for key in locals().keys():
for value in locals().values():
print(key, value)
这......有点工作,但不是真的。虽然它为我提供了该 def 中所有值的正确读数,但它仅显示
state
为 key 。我明白为什么了,因为在它移动到第二个之前,我正在遍历第一个键中的所有值。我想要的是一个会产生的循环,比如:
address 123 My Address
city
state_province Illinois
country USA
postal_code 12345
contact McGruff
state Illinois
而这个,显然只是首先列出键,然后是值。我如何一次做一个键和一个值?
for key in locals().keys():
print (key)
for value in locals().values():
print (value)
...
print (key, key.values())
不起作用。也不
for key in locals().keys():
print (key, locals().values())
我想我已经接近了,但就是无法得到它!感谢您的任何建议/建议。
最后一点:我需要以一种可以查看
value
的方式来执行此操作。不为空,如果不为空,用", "
修改值在函数继续之前。
最佳答案
您可以遍历键并使用 .get
打印出键和键的值。方法。
for key in locals().keys():
print(key, locals().get(key))
或者,您可以仅使用索引来获取值。
for key in locals().keys():
print(key, locals()[key])
最后,您还可以使用
.items()
的字典。 ( .iteritems()
对于 Python 2.x)for key, value in locals().items():
print(key, value)
确保实例化
key
和 value
在使用这些变量之前。否则,您将更改 locals()
中的项目在迭代时,你会得到一个错误。
关于python-3.x - 遍历函数的每个键及其值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44709499/