0
Help us understand the problem. What are the problem?

posted at

Python3 基本構文

Python3 基本構文

Pythonを書く機会があったのでよく使う構文をまとめます。

0. インデント

Pythonではインデントを落とした部分が処理ブロックになるので、if 条件:for ~ in ~:などの後はインデントを落としましょう。

1. 変数定義

Pythonは動的型付け言語なので、変数宣言時に型宣言は必要ありませんが、定義した変数が何型(整数, 浮動小数, 文字列, 真偽値, ...)なのか常に意識して書くと、コーディング時にキャスト(型変換)が必要かどうかの判断が容易になったり、他言語でも型で苦労することは無くなると思います。

  # ==================================
  # ------------- 変数定義 ------------
  # ==================================

  # Integer(整数)型
  num1 = 10
  num2 = -3

  # Float(浮動小数)型
  num3 = 1.5
  num4 = -2.5

  # String(文字列)型
  text = 'こんばんは、山下です。'

  # Bool(真偽値)型
  condition1 = True # TrueのTは大文字で!!
  condition2 = False # FalseのFは大文字で!!

2. 標準出力

コンソールに出力する際に使用するprint()関数です。

  # ==================================
  # ------------- 標準出力 ------------
  # ==================================

  # 1. print関数の引数に直接String型の文字列を渡して出力

  print('こんにちは、山本です。')

  #
  # === 結果: こんにちは、山本です。
  #

  # 2. 一度変数textにString型の文字列を代入し、print関数に変数textを渡して出力

  text = 'こんにちは、山本です。'
  print(text)

  #
  # === 結果: こんにちは、山本です。
  #

  # 3. 文字列を連結する際は「+」を使う

  jp_fruit = 'りんご'
  en_fruit = 'apple'
  print('「' + jp_fruit + '」は、英語で「' + en_fruit + '」です。')

  #
  # === 結果: 「りんご」は、英語で「apple」です。
  #

3. if文(条件分岐)

プログラムの基本の条件分岐です。if 条件の条件を満たす時にTrueが返されます。

  if 条件1:
    # 条件1が真(True)の時の処理
  elif 条件2:
    # 条件1が偽(False)で条件2が真(True)の時の処理
  else:
    # 条件1と条件2のどちらとも偽(False)の時の処理

コード例は以下の通りです。

  # ==================================
  # ---------- 条件分岐 その1 ----------
  # ==================================

  num1 = 10

  if num1 == 5:
    # 実行されない...
    print('num1と5は等しい')
  elif num1 == 10:
    # 実行される!!!
    print('num1と10は等しい')
  else:
    # 実行されない...
    print('num1は5と10の両方とも等しくない')

  #
  # === 結果: num1と10は等しい
  #
  # ==================================
  # ---------- 条件分岐 その2 ----------
  # ==================================

  jp_fruit = 'りんご'
  en_fruit = 'apple'

  if jp_fruit != en_fruit:
    # 実行される!!
    print('文字列として' + jp_fruit + 'と' + en_fruit + 'は等しくない')

  #
  # === 結果: 文字列としてりんごとappleは等しくない
  #

4. for文(繰り返し処理)

同じ又は似通った処理を行う際に使うのが繰り返し処理であるfor文です。

  for 変数 in オブジェクト:
    # 繰り返し処理

変数は1週ごとにオブジェクトから次々取り出す要素が代入されます。forに記述するオブジェクトは、以下のようなものがあります。

  1. range(繰り返しする回数)

  # list(range(5))でリストに変換すると...

  #
  # === [0, 1, 2, 3, 4]
  #

  2. 配列

  # fruits = ['りんご', 'メロン', 'ぶどう']

  #
  # === ['りんご', 'メロン', 'ぶどう']
  #

rangeではfor 変数 in変数に、繰り返し1回目は0、繰り返し2回目は1というように、0〜4までの値が渡され、繰り返し処理が0〜4の要素数の合計である5回行われます。
と言っても最初はrangeの中身は気にしなくてもfor文が使えれば良いので、単純な繰り返し処理なら要はrange()の()には繰り返す回数を数値で代入しておけば良いと覚えてください。

  # ==================================
  # --------- 繰り返し処理 for 1 --------
  # ==================================

  for i in range(5):
    print(str(i) + '回目')

  # rangeは引数を増やしてこの様な書き方もできます(0以上5未満で繰り返し)
  for i in range(0, 5):
    print(str(i) + '回目')

  # === 結果:
      # 0回目
      # 1回目
      # 2回目
      # 3回目
      # 4回目

  # ==================================
  # --------- 繰り返し処理 for 2 --------
  # ==================================

  fruits = ['りんご', 'メロン', 'ぶどう']

  for fruit in fruits:
    print('果物: ' + fruit)

  # === 結果:
      # 果物: りんご
      # 果物: メロン
      # 果物: ぶどう

5. while文(ループ処理)

for文と同様に繰り返し処理を行いますが、while文は若干異なり、for文ではあらかじめ繰り返し回数を指定していますが、while文では条件を満たす限り処理をし続けるというのが特徴です。

  while 条件式:
    # 条件が真(条件を満たす)の時に実行する処理

条件式の書き方はif文と同じで、その条件が真(True)となる間処理をし続けます。

以下のループではprintの前にcountを増やしているので、countの初期値が0でも「1回目」からコンソールに表示されます

  # ==================================
  # --------- ループ処理 while 1 -------
  # ==================================

  count = 0

  while count < 5:
    count += 1
    print(str(count) + '回目')

  # === 結果:
      # 1回目
      # 2回目
      # 3回目
      # 4回目
      # 5回目

以下のループは中断をしないと「無限ループ」と呼ばれるもので、条件が永遠に真(True)のままなので処理が終了しません。終了させるためには必ず処理部にbreakを記述しましょう。以下の例ではループ処理1と同様に処理が終了するように記述しています。

  # ==================================
  # --------- ループ処理 while 2 -------
  # ==================================

  count = 0

  while True:
    count += 1
    print(str(count) + '回目')

    # countが4を超えた場合にループ処理を終了する
    if 4 < count:
      break

  # === 結果:
      # 1回目
      # 2回目
      # 3回目
      # 4回目
      # 5回目

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
0
Help us understand the problem. What are the problem?