python-3.x - 遍历函数的每个键及其值

标签 python-3.x

这个问题在这里已经有了答案:





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)

确保实例化 keyvalue在使用这些变量之前。否则,您将更改 locals() 中的项目在迭代时,你会得到一个错误。

关于python-3.x - 遍历函数的每个键及其值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44709499/

相关文章:

python - 无法获取 Gtk.ListBox() 对象以在运行时在 Python 中添加新的 Gtk.ListBoxRow() 对象

python - 如何快速创建不替换总体的随机样本?

python - 使用 Python 的 "from"关键字?

python - 如何读取两个串联的 JSON 文件?

python - 如何将数据帧的第一行读取为数据行而不是标题

python - 如何使 Dijkstra 算法报告最短路线的完整最终距离

c - 将微服务(使用 ZeroMQ、C 和 Python 进程)从 64 位硬件移动到 32 位硬件后的延迟,但名义上的 cpu 使用率

python - 将 .csv 文件从 URL 读取到 Python 3.x - _csv.Error : iterator should return strings, not bytes(您是否以文本模式打开文件?)

python - 如何在 pandas 数据帧中选择最小值并保存我的字符串数据

python - 如何读取文件并提取多行模式之间的数据?