私がPythonで発見した1つの問題は、それぞれ独自のインデックスを持つ入れ子になったループを作成するのはあまりユーザーフレンドリーではないということです。Python:0から開始しないネストされたfor-loopsインデックスを持つ方法
は、どのように私はこのJavaコードのPythonの相当を記述します。私は前任者のネストされた各ループのためのカウンタ値を参照する方法を
for(int i = 0; i < array.length-2; i++){
for(int j = i+1; j < array.length-1; j++){
for(int k = j+1; k < array.length; k++){
注意してください。私が使用してみました:
for idx, val in enumerate(nums[:-2]):
をしかしidx
は常に0で開始するのではなく前任者のインデックス値から開始されますように思えます。個別のカウンタ変数を維持する以外にも、より良い解決策がありますか?
私はここでXYの問題をかぎます。あなたは何を解決しようとしていますか?多くの場合、異なる言語間に1-1のマッピングはありませんが(ここにあります)、Javaが提供していない同じ問題を解決するためのより良い方法があるかもしれません。 –
参考までに、全く難しいことではありません。 (j + 1、len(arr)):... 'の範囲内のkについては、範囲内のjに対して(i + 1、len(arr) - 1) 'range 'でネストされたループを使うことはそれを行うための明白な方法でしょう。 –
これは関連している可能性があります:https://stackoverflow.com/questions/41521725/iterating-over-multiple-indices-with-ijk-in-a-pythonicwayway –