基于值在字典中的位置创建“if”语句

2024-09-30 20:37:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我想基于多值字典中的特定位置构造一些if语句。我的示例字典和伪代码是:

position1 = 0
position2 = 0
position1Unique = 0

exDict = {1: [800, 3, 0, 0], 2: [600, 0, 2, 1], 3: [900, 1, 5, 9]}

for value in exDict:
    if value_position1 > 0:
        position1 += 1
    if value_position2 > 0:
        position2 += 1
    if value_position1 > 0 AND value_position2 = 0 AND value_position3 = 0:
        position1Unique =+ 1

对于这本词典,我的价值观是:

position1 = 2
position2 = 2
position1Unique = 1

如果示例中不清楚,则不会计算键/索引和第0个索引值


Tags: and代码in示例forif字典value
1条回答
网友
1楼 · 发布于 2024-09-30 20:37:38

可以使用dict.values对字典的值进行迭代。exDict中的值是普通列表,您可以像其他任何列表一样使用[idx]对它们进行索引

position1 = 0
position2 = 0
position1Unique = 0

exDict = {1: [800, 3, 0, 0], 2: [600, 0, 2, 1], 3: [900, 1, 5, 9]}

for value in exDict.values():
    if value[1] > 0:
        position1 += 1
    if value[2] > 0:
        position2 += 1
    if value[1] > 0 and value[2] == 0 and value[3] == 0:
        position1Unique =+ 1

print(position1)
print(position2)
print(position1Unique)

结果:

2
2
1

相关问题 更多 >