python中嵌套的for循环,具有交错的开始变量
下面是我试图实现的代码的简单版本:python中嵌套的for循环,具有交错的开始变量,python,python-3.x,Python,Python 3.x,下面是我试图实现的代码的简单版本: for key, value in data.items(): for key2, value2 in data.items(): # other stuff 我正在寻找一种在key处启动key2的方法。所以,例如C++中,将是: for(int i=0; i<n; i++){ for(int j=i; j<n; j++){ # other stuff } } for(int i=0;i您可
for key, value in data.items():
for key2, value2 in data.items():
# other stuff
我正在寻找一种在key
处启动key2
的方法。所以,例如C++中,将是:
for(int i=0; i<n; i++){
for(int j=i; j<n; j++){
# other stuff
}
}
for(int i=0;i您可以使用enumerate
:
for i, (key, value) in enumerate(data.items()):
for key2, value2 in list(data.items())[i:]:
#stuff
如果你想迭代所有无序对,自然的解决方案是使用。这有一个额外的优点,即循环只需要一级缩进
按需要导入itertools
对于it.组合(data.items(),2)中的(k1,v1)、(k2,v2):
...
如果要包括k1==k2
的对,可以使用:
it中(k1,v1)、(k2,v2)的。组合_与_替换(data.items(),2):
...
哦,这太好了。enumerate是否为您提供了索引?谢谢您的帮助!我将尝试实现此功能作为密码-enumerate
是一个内置迭代器,它返回(索引,值)的元组