ホームページ  >  記事  >  バックエンド開発  >  Python多次元スライスコロンと3つの点

Python多次元スライスコロンと3つの点

不言
不言オリジナル
2018-04-19 11:14:422733ブラウズ

以下は、Python の多次元スライスにおけるコロンと 3 つのドットの使用法を紹介するもので、参考になると思います。一緒に見てみましょう

私は Python と numpy を初めて使用しますが、多次元スライスを学習する過程で遭遇する問題をまとめます。

比較的単純な 1 次元のスライスについては説明しません。まず 2 次元のスライスと多次元のスライスについて説明します。例えば、まず5x5の2次元配列を作成します

各次元に応じて多次元スライスが取られます

ここでは、1次元目は2~3個、2次元目は3~5個が出力されますそれぞれ (インデックスは 0 から始まります)。

ここにすべての行と 3 ~ 5 列目があります。

これは誰にとっても最も混乱する部分です。なぜ列パラメーターが None に変更され、出力形状が変更されるのでしょうか? ここで、None には、Everyone というエイリアスがあることを知っておく必要があります。 numpy.newaxis を出力するとわかりますが、このニックネームは名前が示すとおりである必要があります。では、なぜ 5x5x1 ではなく 5x1x5 なのでしょうか? それは、2 次元で None を使用したためです。信じられない場合は、見てください

。誰もが理解するはずです。つまり、None がどの次元に配置されると、その次元に新しい次元が出現します。

さらに奇妙なものを見てみましょう

3 つのドットは一体何ですか? 記憶によれば、これは改行操作ではないでしょうか? しかし、ここではすべてのコロンが省略され、それらが次のように置き換えられます。この a[ :, :, None] と a[…, None] を見ると、… が最初の 2 つのコロンを置き換えているため、同じ出力になります。もう明らかになるはずです。

三次元以上に関しては二次元と全く同じです。



以上がPython多次元スライスコロンと3つの点の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。