0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Python勉強記録 #2 リスト, for文, if文

Last updated at Posted at 2021-06-02

リストの作り方

変数名 : numbers
値 : 2,5,7
のリストを作るとします。

numbers = [2, 5, 7]

のように書きます。

リストの個数の表示

リストのサイズ(要素数)を取得するときは、
len(numbers)で取得できます。

リストの足し算

a = [2, 5, 7]
b = [3, 2, 2]
print(a + b)
"""
出力結果 : [2, 5, 7, 3, 2, 2]
"""

普通に足し算すると、リストに追加されてしまいます。
aとbのそれぞれの一番目、二番目、三番目を足すには、

list_addition.py
a = [2, 5, 7]
b = [3, 2, 2]
c = [_a + _b for (_a, _b) in zip(a, b)]
print(c)
"""
出力結果 : [5, 7, 9]
"""

このようにfor文を使って書きます。

for文

forは繰り返しをする時の"文"です。
for文と呼ばれ、

for 変数 in オブジェクト:
    実行する処理

のように使われます。
上の list_addition.py ではzip()も使われていますが、
これは、複数のリストをまとめる関数です。
なので、
[_a + _b for (_a, _b) in zip(a, b)]
の意味としては、
「aとbの要素を繰り返し_aと_bに代入していく。そして、その_aと_bを足し算する。その足し算したものを一番目から順番にリストにしていく。」
という意味になります。

リストの分割, if文

1から10までの数字が入ったリストを偶数と奇数で分割します。

list_split.py
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

odd, even = [], []
for number in numbers:
    if number %2 == 0:
        even.append(number)
    else:
        odd.append(number)
print(odd, even)
"""
出力結果 : ([1, 3, 5, 7, 9], [2, 4, 6, 8, 10])
"""

ここでは、ifが使われています。
forとの同時出現で少しややこしいですが、
odd, even = [], []
odd, even は空のリストであると定義。
for number in numbers:
numbers の中から、順番にnumberに代入していく。
if number %2 == 0:
もし、number が2で割り切れるなら、
even.append(number)
even に number を追加。
else:
そうでないなら、
odd.append(number)
odd に number を追加。

という意味になります。
難しそうに見えても、一文ずつ理解していけば分かりやすいですね。

条件をつなげたい時

条件をつなげたい時は
if x > 50 and x < 200:
のように記述すれば、「xが50より大きく200より小さい時」という条件にできます。

タプル

[]ではなく、()で囲うとリストではなく、タプル(tuple)になります。

numbers = (2, 5, 7)

タプルは後から中の要素を変更することはできません。

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?