icon
icon

Pythonの配列記述にあるコロンの意味について現役エンジニアが解説【初心者向け】

初心者向けにPythonの配列記述にあるコロンの意味について現役エンジニアが解説しています。リスト型、文字列、タプル型のデータ型はシーケンスと呼ばれ、スライス機能を使ってデータを切り取ることあ出来ます。コロンを使って開始点や終了点のインデックス番号を指定することが出来ます。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

監修してくれたメンター

nakamoto

アジマッチ有限会社代表取締役社長。書籍化歓迎。対応業務:PHP(Laravel)、機械学習、Vue.js、LAMP・AWS、越境EC、CTO、エンジニア採用、CTO、経営者の不安解決コンサルティング。

Pythonの配列記述にあるコロンの意味について、テックアカデミーのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

Pythonの配列記述にあるコロンは、配列を利用する上で文法上必要なものです。

実務でも配列を利用するため、コロンの意味についてぜひ学習してみてください。

目次

1時間でできる無料体験!

そもそもPythonについてよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Pythonの配列記述にあるコロンの意味について詳しく説明していくね!

大石ゆかり

お願いします!

 

この記事では、PythonのList型やNumPy配列型などを扱うときに必須の「スライス」について解説します。

 

シーケンスとは

「シーケンス」というのは、次のコードのように、複数の値を保持することのできるデータ型のことです。

["a", "b", "c", "e", "d"]

 

Pythonでは、次のようなシーケンスが用意されています。

  1. リスト型
  2. 文字列
  3. タプル型

 

各要素を取得する

シーケンスでは、各要素を取得する場合には、次のように実装します。

インデックス番号というのは、イメージ的には要素が何番目にあるかという指定です。

変数名[インデックス番号]

 

5つの要素の例

例えば5個の要素を持つシーケンスの場合は、次のようなイメージです。

先頭が0から始まることに注意してください。

[インデックス番号は0, インデックスは番号1, インデックス番号は2, インデックス番号は3, インデックス番号は4]

 

インデックスの先頭は0

次のような配列があった場合、aは0番目のインデックスです。

ls = ["a", "b", "c", "e", "d"]

 

インデックスと値をわかりやすく平行に表示すると、次のようにlsの0番目がaという確認ができます。

ls[0] → "a"
ls[1] →  "b"
ls[2] → "c"
ls[3] → "e"
ls[4] → "d"

 

スライスとは

シーケンスから複数の値を取得したいとき、シーケンスの長さがとてつもなく長い場合などには、1つ1つインデックスを指定するのは大変です。

そこで用意されている便利な操作方法がスライスです。

スライスを利用することで、「:」(コロン)を利用してシーケンス内の特定位置の値を取得することが可能です。

スライスは「:」(コロン)を使うので一見分かりづらいかもしれませんが、なれると非常に使い勝手のいい操作です。

 

[PR] Pythonで挫折しない学習方法を動画で公開中

スライスの使い方

ここでは、スライスの使い方について解説していきます。

 

スライスの基本

最も基本的な使い方としては、次のように、2つのインデックス番号を指定する方法があります。

始点のインデックス番号 : 終点のインデックス番号

 

視点から終点前までの要素を取得

こうすることで、「始点」から「終点」の1つ前までの要素を1度に取得できます。

ls = ["a", "b", "c", "e", "d"]
print(ls[2:5])

 

すると、次のように表示されます。

 

始点のインデックス番号を省略

始点のインデックス番号を省略すると、次のように表示されます。

ls[:4]

終点のインデックス番号を省略

終点のインデックス番号を省略すると、次のように表示されます。

ls[2:]

飛び飛びの値を取得

スライスは始点と終点を指定して取得できるだけではなく、飛び飛びの値も取得できます。

そのためには、コロンをもう1つ追加して、スキップすることが可能です。

始点のインデックス番号 : 終点のインデックス番号 : スキップする数+1

 

スキップを指定しない場合

スキップを指定しない場合は、次のように実装します。

始点のインデックス番号 : 終点のインデックス番号 : 0+1

 

コラム

コスパとタイパ、両方結果的に良くなる良くなる学び方とは?

「スクールは高いし時間も縛られて効率が悪い」と考える方は多いと思います。
もちろん、時間も費用もかかることは間違いありません。
ただ 結果的に無駄な学びにお金も時間もかける方がリスクが高いという考えもあります。

コスパ・タイパ最適化の参考として、 テックアカデミー卒業生がスクールを選んだ理由 をご紹介します。

  • ・困ったときに、質問や相談できる相手がいるため挫折しなかった
  • ・プロとして必要なスキルのみを深く学べたので無駄がなかった
  • ・副業案件の提供と納品までのサポートがあったので目的を達成できた

安価・短期間で広く浅く学んでも意味がありません。 本当に自分の目的が達成できるか、それが重要です。
自分にどのスキルや学び方が合っているか、どんな学習方法かなど、お気軽に 無料相談 に参加してみませんか?

カウンセラー・現役のプロへ、何でも気軽に無料相談可能。 30分か60分お好きな時間が選べて、かつ3回まで すべて無料で ご利用できます。
無理な勧誘は一切ない ので、お気軽にご参加ください。

今なら相談した方限定の割引・参加特典付き! 無料相談はこちら

実際に書いてみよう

ここでは、実際に書いてみましょう。

対話型で以下のコードを1行ずつ実行してみましょう。

>>> ls = ["a", "b", "c", "d", "e"]
>>> ls[2]
>>> ls[2:5]
>>> ls[:4:2]

ls = [“a”, “b”, “c”, “d”, “e”]では、listを用意しています。

>> ls[2]では、インデックス番号で取得しています。

表示結果は c です。

>>> ls[2:5]では、インデックスの2番目から5番目の値を取得しています。

表示結果は[‘c’, ‘e’, ‘d’]です。

>> ls[:4:2]では、始点の位置を省略して、終点を4番目のインデックスの位置にして、2つ飛ばしで値を取得しています。

表示結果は、[‘a’, ‘c’]です。

 

まとめ

コロンを利用することで配列の操作を行う際の始点や、終点、飛ばす指定を行うことができました。

シーケンスというのは、複数の値を保持することのできるデータ型のことでした。

スライスというのは、「:」(コロン)を利用してシーケンス内の特定位置の値を取得することが可能でした。

基礎から始める!Python学習におすすめの本11選 も参考にしてみてください。

 

大石ゆかり

内容が分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

1時間でできる無料体験!

Pythonを学習中の方へ

これで解説は終了です、お疲れさまでした。

  • つまずかず「効率的に」学びたい
  • 副業や転職後の「現場で使える」知識やスキルを身につけたい

プログラミングを学習していて、このように思ったことはありませんか?

テックアカデミーのPythonコースでは、第一線で活躍する「プロのエンジニア」が教えているので、効率的に実践的なスキルを完全オンラインでしっかり習得できます。

合格率10%の選考を通過した、選ばれたエンジニアの手厚いサポートを受けながら、人工知能(AI)や機械学習の基礎を学べます。

まずは一度、無料体験で学習の悩みや今後のキャリアについて話してみて、「現役エンジニアから教わること」を実感してみてください。

時間がない方、深く知ってから体験してみたい方は、今スグ見られる説明動画から先に視聴することをおすすめします!

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学で学習していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、マンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう カウンセラーやエンジニア・デザイナー があなたの相談に真摯に向き合います。

「自分に合っているか診断してほしい」
「漠然としているが話を聞いてみたい」

こんなささいな悩みでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する