私はこのような単純な、常に連続し-順序付けられたリストがあります:私もcurrent = 4
を持ってPythonでリストの範囲(サブセクション)を削除するにはどうすればよいですか?
all = [ 1, 2, 3, 4, 5, 6 ] # same as range(1, 7)
を。最後に、私は、だから何が起こったことは、それはそれ3
前current
数と1を取り外したall
リストはこの
altered = [ 1, 2, 5, 6 ]
に見えるようにしたいです。
current
もあります。1
と0
です。この2つの値でエラーが発生しないようにしたいと思います。例外current = 0
については
は、変更されたリストはcurrent = 0
は、単に最後の番号を削除することを意味し、この
altered = [ 1, 2, 3, 4, 5 ]
のようなものです。
私はおそらく、ジェネレータで何か気になるコードを作成することができると思っていますが、私はそれらを書き留めています。
ありがとうございます!
ボーナスポイントこれを1行で実行します。 current = 0
に問題がある場合は、current = -1
またはcurrent = 7
でもかまいません。
EDIT:この作品はなり
altered = [ 2, 3, 4, 5, 6 ]
それは値4を有しているためか、(一方から数えて)第4の位置にあるので、現在の== 4はリストから削除4である場合?同様に、3が削除されたのは4より小さい最小の数であるか、または削除された項目の前のインデックスにあるためです。 – thebjorn
リストは常に 'range()'なので、位置や値として見ても問題ありません。 – hobbes3
'all()'関数が組み込まれていて、名前を使用するとそのリストへのアクセスを削除するので、 'all'を呼び出さないでください。 – jamylak