2
私は最初の要素がないリストの要素を選択しようとしています。次のコードは動作しますが、私には一見醜いものになりますシンプルなpythonリストの理解の質問
[s[i] for i in range(len(s)) if i>0]
もっと良い方法がありますか?ありがとう
私は最初の要素がないリストの要素を選択しようとしています。次のコードは動作しますが、私には一見醜いものになりますシンプルなpythonリストの理解の質問
[s[i] for i in range(len(s)) if i>0]
もっと良い方法がありますか?ありがとう
スライス表記を使用します。
s[1:]
また、あなたは、このようにリストをコピー避けることができます。
itertools.islice(s, 1, None)
結果がリストではありません - それがために、ランダムアクセスをサポートしていません。インスタンスですが、イテレータを受け入れるものに渡すことができます。
s[1:]
は間違いありませんか?
+1 fir 'islice'。 – delnan
完全性のために、大きなリストの真ん中からスライスしたいときには、 'islice'は少し問題があります。それはイテレータを作成しますが、 'next'を呼び出すことによってスライスの先頭に移動します。 Pythonはリスト構造とデータをコピーするだけで済むので、スライシングは非常に高速です。 –