python - for 循环内递增键、值对迭代字典

标签 python python-2.7

在 python 中迭代字典时,如何在 for 循环内增加键值对?

for key,value in mydict.iteritems(): 
    if condition:
        #inc key,value
    #something to do

我尝试使用 next(mydict.iteritems())mydict.iteritems().next() 但没有成功。

我使用的是python2.7。

编辑 - 我知道 forloop 会自动递增键值对。我想手动递增到下一对(从而导致 2 个增量)。 另外,我无法使用 continue,因为我希望同时访问两个键值对。这样,当我递增时,我就拥有当前的键值对以及下一个键值对。如果我使用继续,我将失去对当前的访问权限,只能获取下一个键值对。

最佳答案

你的意思是这样吗?

mydict = {'a': 1, 'b': 2, 'c': 3}

items = mydict.iteritems()
for key,value in items:
    if key == 'b':  # some condition
        try:
            key,value = next(items)
        except StopIteration:
            break
    print(key, value)

输出:

('a', 1)
('c', 3)

关于python - for 循环内递增键、值对迭代字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32920890/

相关文章:

python - 无法使用 KeyboardButton 获取用户的电话号码

python - 无法在云 shell 中将 Google App Engine 连接到 CloudSQL Postgres(通过 SQLAlchemy)

python - 在 python 中创建抽象层的正确方法

python - 如何使用python将字符串转换为字典(格式错误的字符串)

python-2.7 - 如何识别 Python pandas Dataframe 中第一次出现的重复行

python-2.7 - 从 cmd 运行 Luigi 任务 - "No module named tasks"

Python(Pandas) 填充空白单元格

Python MQTT Connect 限时

sql - Python/sqlite3:执行数千个“SELECT”查询时提高性能

python - 在 python linux 中执行命令时在 python 中给出响应 os.system()