« MIT Python 教室 第1回 (データの型、演算子、変数) | トップページ | MIT Python 教室 第21回 (シミュレーション結果の確認、曲線のあてはめ、線形回帰、PyLab) »

2009-09-28

MIT Python 教室 第2回 (演算子、命令、条件分岐、繰り返し)

講義映像を見ていると, 講義中に質問すると菓子がもらえるシステムが 採用されています. Stanford でのある講義でも 質問するとチョコバーがもらえるシステムが 採用されていたので, アメリカや他の国ではしばしばあること なのかもしれません.

今回の講義は, 前半が型, 演算子, 変数に関する説明, 後半が, 命令, 条件分岐, 繰り返しについて 配布資料中のプログラム (プログラム 1-5) を使った説明でした.
  • 型の確認
    • 型の種類: 数字, 文字列, 真偽値
    • 3*'ab' = 'ababab'
    • 3+'ab' = error
    • str(3) + 'ab' = '3ab'
  • 型の区別
    • 'a' < 3 = false
    • 4 < '3' = true
    • '4' < '3' = false
  • 演算子
    • 9/5 = 1 (整数の割算の商)
    • 9%5 = 1 (整数の割算の剰余)
    • 演算子の優先順位: (先) ** >> +/ >> +- (後)
    • 順序が不明なら, 括弧を使う.
  • 変数
    • 変数への代入: x = 3 * 5, (変数) = (式).
    • 変数の型: 動的に変更
    • x = 3 (数字)
    • x = 'abc' (文字列)
    • 同じ変数に別の型の値は代入できる.
    • しかし, プログラムが読みにくくなるので, 同じ変数には同じ型の値のみを代入するようにする.
    • 値が置くところのできる場所には, その値の型を持つ変数を置くことができる.
  • 命令 (プログラム 1)
    • 命令: Python が翻訳できるコマンド (print, 代入など)
    • 注釈 (# で始まる): コードを読みやすくする.
    • 変数名にキーワード (命令名など) は使えない
    • 数字を入力してください. に対して, 文字列でも受け付けてしまう.
  • 条件分岐 (プログラム 2)
    • 分岐のないプログラム: 命令を順番に実行
    • 分岐のあるプログラム: 命令の実行順序が変化する
    • コロンが重要. 命令のブロックの始まり
    • 改行がブロックの終わり
    • == が等号, = が代入.
    • 書式
    • if (条件式):
        (命令のブロック)
      else: 
        (命令のブロック)
      

      ブロックのインデントは同じレベルで行う.
  • ブロックと条件分岐 (プログラム 3)
    • インデントのない行はブロックの外になり, 実行結果は変化する.
  • 複数の条件分岐 (プログラム 4)
    • テストケースで, 誤りが含まれていないかを確かめる.
    • elif : else if を表す.
    • 条件式の組み合わせ: and, or, not
    • 条件式の型 (boolean): true, false のいずれか
    • 単純な分岐があるだけのプログラムは, プログラムの長さに比例した時間で実行できる.
  • 繰り返し (ループ) (プログラム 5)
    • 書式
    • while (条件式)
        (ブロック)
      
    • 条件式が満たされるまで, ブロックは実行される.
    • 条件式の変数がブロック中で変化すると, 繰り返しを終わらせられる.
    • 条件式の変数がブロック中で変化せず, いったんブロックに入ると, プログラムは停止しない.
    • 条件式の変数は, ループの前で設定しておくこと.
    • プログラム 5 は, x の二乗を計算するプログラム
    • x が正の整数でないと, プログラム 5 は正しく動作しない.
最後の例 (プログラム 6) は次回に説明されるようです.

« MIT Python 教室 第1回 (データの型、演算子、変数) | トップページ | MIT Python 教室 第21回 (シミュレーション結果の確認、曲線のあてはめ、線形回帰、PyLab) »

Python lecture notes」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/1174621/31559843

この記事へのトラックバック一覧です: MIT Python 教室 第2回 (演算子、命令、条件分岐、繰り返し):

« MIT Python 教室 第1回 (データの型、演算子、変数) | トップページ | MIT Python 教室 第21回 (シミュレーション結果の確認、曲線のあてはめ、線形回帰、PyLab) »