この章ではリストについて説明します。
変数は1つのデータだけを代入することができました。
つまり、他のデータを入れようとすると上書きされて、前のデータは消えてしまうことは説明しましたね。
変数とは違って、リストは複数のデータをまとめて入れることができます。
リストは他の言語で使われる配列と同じ意味になります。
普通の変数では以下のように別々の変数名でそれぞれのデータを入れなければいけません。
これらの複数の変数は一見して繋がっているように思われますが、コンピュータのメモリ上では全く別の変数になります。
リストに入っているデータはお互いに関係性を持って存在しています。
このように関係のある複数のデータはリストとして1つの変数にまとめれば便利です。
要素とはリストで使うデータと同じ意味です。
先ほどのリストの例は2行で書いていますが、1行で書ききれない場合には2行で書いてもいいです。
リストの要素には違う種類の型も混ぜて入れることが出来ます。
例えば
次にリストの添え字について説明します。
例をみてみましょう。
例えば、コインロッカーに荷物を預ける場合には必ずロッカーには番号が付いています。
この番号があるからこそ、どこに自分の荷物があるのかが分かるわけです。
ですので、添え字とはリストの中の1つ1つのデータがリストの中でどこに保管されているのかを管理する番号だと考えてください。
ではリストの中のデータを添え字を使って取得する方法について説明します。
リストの中のデータは以下の構文で取得できます。
では先ほどの例で添え字について説明します。
添え字は1から始まっているわけではないので、注意してください。
リストからデータを出力するには以下の構文で書きます。
つまりanimal[0]には猫と言うデータが入っています。
このようにカッコ[ ]の中に添え字を入力するとそれに応じた要素をリストから取得することができます。
また添え字にはマイナス値を指定することもできます。
例えば animal[4] は
つまり、添え字のマイナス指定の場合はリストの末尾から-1,-2..と添え字を指定します。
では例をみてみましょう。
一番前の猫の添え字は-5になります。
結果は次の通りです。
次はリストの要素を書き替える方法について説明します。
次は連続した数値をリストの要素にする場合の便利な書き方について説明します。
では例をみてみましょう。
そこで、これをrange関数で書き替えると簡単に書くことができます。
では例をみてみましょう。
この例のrange関数は
ここで気を付けてほしいことは例の終了番号は10と書いていますが10はリストの要素には入りません。
終了番号の一つ手前までが要素になりますので9までになります。
終了番号だけを書いた場合は0から終了位置の一つ手前の要素までになります。
次はrange関数の引数を以下のように3つ書いた時の動きを説明します。
このリストの意味は5から9までの範囲以内で2ずつ増やしていくと言う意味です。
結果は次の通りです。