Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Python講座演習4.pdf

sk
May 30, 2019

 Python講座演習4.pdf

sk

May 30, 2019
Tweet

More Decks by sk

Other Decks in Education

Transcript

  1. リストの再確認  リスト型:[要素1, 要素2, … , 要素n] →要素(データ)の追加、取り消しなど ・似たものをまとめて取り扱える :トランプの札、キャラのステータスとか

     リストの宣言 変数名 = [] (空のリスト) または 変数名 = [要素1, 要素2, … , 要素n]  要素の確認(リスト名:A = [“a”, “aiueo”, 123, “234”]) A[インデックス]で呼び出し: A[0] >>> ”a”, A[3] >>> ”234” A[1] + A[0] >>> “aiueoa” 0番目から!
  2. リストの再確認  主要な関数 ・追加系 append, insert ・削除系 pop, remove, clear

    ・その他 count, reverse, sort など A = [] A.append() など
  3. リストの再確認  .append(a) …リストの末尾に要素aを追加 A.append(23)  .insert(i, a) … リストの

    i 番目に要素aを挿入 A.insert(1, “b”)  .pop(n) …リストのn番目の要素を取り出す ()だと末尾の要素 A.pop(0)  .reverse() …リストの順番を反対に入れ替える A.reverse() A = [“a”] A = [“a”, 23] A = [“a”, “b”, 23] A = [“b”, 23] A = [23, “b”]
  4. リスト内包表記(発展)  .appendとか繰り返すより実行速度が速い  パターンがある要素を定義しやすい a = [1, 2, 3,

    4, 5, 6, 7, 8, 9, 10, 11, 12, 13] ・・・mendou b = [a for a in range(1, 13)] >>> b = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]  色々あるらしい c = [(x, y) for x in range(2) for y in range(4)] >>> c = [(0, 0), (0, 1), (0, 2), (0, 3), (1, 0), (1, 1), (1, 2), (1, 3)]  テストには出ません  調べてみよう
  5. ファイル操作  二種類の方法  open関数 単体 変数名 = open(“ファイル名”) →

    変数名 . close() が必要。  with open with open (“ファイル名”, mode = “モード名”) as 変数名 : 動作 … →こっち覚えておけばok
  6. ファイル操作 with open (“ファイル名”, mode = “モード名”) as 変数名 :

    動作 …  モード名: “r” read 読み込みのみ “w” write 書き込みのみ(上書き) “a” add 書き込みのみ(追記) “+” 読み書き両方したいとき →→ “a+” で大体はok
  7. ファイル操作 基本の操作  . read () ファイルから全ての行を読み込む  . readline()

    ファイルから一行読み込む  . write(引数) ファイルに引数を書き込む
  8. クラス  オブジェクト指向について (=概念) 雰囲気:モノ=オブジェクト →オブジェクトは固有の属性を持つ。 (名前、年齢、イメージカラー、etc…) →オブジェクトは固有の動作がある。 (歩く、踊る、スクールアイドルになる、etc…) 

    これらを纏めて保持するものがクラス →似た属性を持つオブジェクトを作れるようになる。  クラスを用いて生成したオブジェクト= “インスタンス” imageColor:白 def be_an_idol()… ほぼ同じ意味
  9. クラスの書き方(with dataclass) from dataclasses import dataclass @dataclass class クラス名 :

    変数1 : 型 変数2 : 型 … def 関数1(): … def 関数2(): … classの手前の行に @dataclass @:デコレータで検索 型:str, int, float, …
  10. 作ってみる 人のクラス (Human) 属性 名前 年齢 身長 体重 動作 年をとる

    BMIを表示  Human(先頭大文字) が好まれる。
  11. 作ってみる  呼び出す  オブジェクト内の属性(変数)を呼び出すときは オブジェクト . 属性 オブジェクト内の関数を呼び出すときは オブジェクト

    . 関数名 (引数)  Pythonでは大体の物は オブジェクト  リスト.append(n)とか もこの呼び方してる。
  12. 作ってみる  実行 ・変数に代入 変数名 = (クラス (属性値, 属性値, …)

    ) ・クラスを保存した変数 (右ではks)を呼ぶと 属性を表示 してくれるようになった 実行結果 ↓