Python-スライス

高洛峰
リリース: 2016-11-21 18:09:28
オリジナル
1224 人が閲覧しました

リストまたはタプルの一部を取得することは、非常に一般的な操作です。ループを使用してインデックスを通じて要素を 1 つずつ取得することに加えて、Python は便利なスライス (Slice) 演算子も提供します。

次の例のリストを定義します。

L = ['apple','banaba','peal','orange','water melon']

要素を取得します

要素を順番に取得します

たとえば、L[1] は2 番目の要素、つまりインデックス 1 の要素。

要素を逆順に取得する

リスト、タプル、文字列などは、要素を先頭から取得するだけでなく、末尾から取得することもできます。例:
list[-1] はリストの最後のものを指します。

複数の要素を取得する

先頭から複数の要素を取得する

print L[0:3]
        ||____切片结束index,但是不包括该index的元素。
        |____切片起始index。包括该index的元素。
        
# 上述即取L这个list的index为0、1、2的三个元素。
        
print L[ :3]
        |___切片开始的index不填则默认是从list最前端即index=0开始。(事实上也不用空一格,这里只是展示方便。)
ログイン後にコピー

上記2つのprint関数の出力は['apple', 'banaba', 'peal']です。スライス記号は、

複数の要素を末尾から順に取得する

のペアです。たとえば、

L[-3:-1]
   |  |____倒数第1个结束,但不包括该元素。
   |_____倒数第3个开始,包括该元素。
ログイン後にコピー

なんと、次のルールを見つけました:
Python がスライスするとき、常に前の要素が含まれますが、最後の要素は含まれません。
もちろん、スライスは端から始まり、インデックスを省略すると最後までカットすることになります。例:

L[-3:]
ログイン後にコピー

突然、スライスするときに開始インデックスと終了インデックスが省略されるという魔法のアイデアが思いつきました。
つまり、L[:]、答えは元のリストと全く同じリストを切り出すことです。

上記の例はすべて、リストを使用して説明されています。実際、タプルと文字列は同じです。 Python や Java などの他のプログラミング言語では、文字列を操作するための関数が多数提供されています。実際、Python ではスライスを使用してこれを簡単に実行できます。

注意

Python がスライスする場合、正しいスライスが返されるように、[from:to] の from は to より小さくなければなりません。そうでない場合は、(文字列スライスの場合) 空のリスト、タプル、または何も返されません。 )。


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!