投稿

5月21日(木)4コマ目

イメージ
今日、やったこと 繰り返しとenumerate() [練習問題]練習問題3 今日のホワイトボード タプルの初期化 タプルの初期値は( )内にカンマ区切りで。 ( )を省略してもOK。 => 1, 2, 3はタプルになる。 図 リスト、タプルの初期化 繰り返しとenumerate() enumerate()は引数のリストやタプルから要素を順に取り出し、取り出した順番(0始まり)と要素のタプルを返す。 for inとenumerate()を組み合わせると、リストやタプルから、順番と要素を順に取り出すことができる。 図 繰り返しとenumerate() 順番はリスト等の添字ではない点に注意。(以下の2番目のセル) [練習問題]練習問題3 ヒント 図 練習問題3-1、3-5 ヒント 3-1 range()の戻り値はrange型。list型ではない。 range型をlist型に変換数するには、変換関数list( )を使う。 3-5 辞書の.items()はキーと要素のタプルを返す。 3-3 提供した富士山気温データは以下のとおり。 図 練習問題3-3 富士山気温データ 次回は 練習問題のつづき、解説。  

5月14日(木)4コマ目

イメージ
今日、やったこと f-string+書式指定 スライス 今日のホワイトボード 文字列に変数を埋め込む 文字列に変数やメソッドの戻り値を埋め込むf-stringは以前からちょこちょこ使っていた。 C#やJavaScriptでもできる。 図 いろんな言語で文字列に変数を埋め込む Javaはどうやら今はできないみたい。 f-string+書式指定 埋め込む際に「書式指定ができる」が今日の新しいポイント。 いろいろなパターンを試してみた。 図 f-string + 書式指定① さらにいろいろと。 図 f-string + 書式指定② ノートブックもあげておきます。 スライス リストやタプル、文字列など 順番がある連続データ から 一部 を参照する方法。 連続なので、辞書型はダメ。 インデックス(添え字)には負数が使える。 増分 にも 負数 が使える。このとき、範囲指定は 開始>終了 となるように。 図 スライス ノートブックをあげておきます。 次回は つづき。 そのうちテスト(評価用課題作成)をします。  

5月7日(木)4コマ目

イメージ
今日、やったこと モジュール 今日のホワイトボード モジュール、パッケージ モジュールはファイル(~.py)。 パッケージはモジュールのあつまり(ディレクトリ)。 図 モジュール、パッケージ モジュールを作る 2つの値の四則演算を行う関数のモジュールを作る。 ①ノートブックに関数作成 新規ノートブックに4つの関数を作成。 図 モジュール ②ノートブックを"~.py"でダウンロード ダウンロードしたcalclator.pyがcalclatorモジュールになる。 モジュールを使う 図 モジュールを使う ①モジュールファイルをアップロード Colaboratoryで自作モジュールを使う場合、モジュールファイル(~.py)をcontentディレクトリにアップロードする。 ②importでモジュールをインポート モジュール名.関数名でモジュール内の関数を実行できる。 import モジュール名 as 別名 でモジュールに別名を命名すると、別名.関数名で関数を実行できる。 ※モジュール名が長い場合は便利 図 モジュールを使う モジュールをインポート ただインポートするだけでなく、インポートして別名をつける、パッケージからモジュールをインポートするができる。 図 モジュールをインポート [練習問題]くじ引き あたり確率10%のくじ引き関数draw()を作成。 確立10%は乱数を使う。 Pythonのrandomモジュールには0以上1未満の乱数を生成するrandom()関数が...

4月30日(木)4コマ目

イメージ
今日、やったこと [練習問題]練習問題2 今日のホワイトボード [練習問題]練習問題2 正解例をあげておきます。 繰り返し処理の変数 繰り返し処理でrange()が返す配列の要素は使わない場合は、変数名の代わりに _ を指定する。 図 繰り返し処理の変数 次回は モジュール。 

4月23日(木)4コマ目

イメージ
今日、やったこと [練習問題]練習問題1 関数 [練習問題]練習問題2 今日のホワイトボード [練習問題]練習問題1 正解例をあげておきます。 関数 キーワード def で関数を定義。 関数のブロックはインデントで表す 。   図 関数 図 関数 文字列の結合、文字列中に変数を埋め込む 図 文字列結合、文字列に変数埋め込み 〇文字列結合 +演算子で文字列結合ができる。 Javaとは異なり、+演算子の両方が文字列でないとダメ。 Javaのように自動的に文字列へ変換はしてくれない。 〇文字列中に変数を埋め込む ” f-string ”という機能がある。 C#の$" {変数} "や、JavaScriptの` ${変数} `と同じ。 図 f-string 3項演算子 C言語由来の言語とは全く異なる書き方。 図 3項演算子 図 3項演算子 次回は 練習問題2のつづき。

4月16日(木)4コマ目

イメージ
今日、やったこと リスト型 辞書型 タプル 算術演算子 比較演算子 論理演算子 条件分岐 繰り返し [練習問題]練習問題1 今日のホワイトボード リスト型と辞書型 リスト型は配列。添字と要素が紐づく。 辞書型は連想配列。キーと要素が紐づく。 図 リスト型と辞書型 タプル 初期値から要素が変更できないリスト。 図 タプル 算術演算子 割り算の / と // に注意。 図 /と//の違い 比較演算子 Cと同じ。 論理演算子 SQLと同じ。 &&ではなく、 and 。 ||ではなく、 or 。 !ではなく、 not 。 条件分岐 if else ifはif elif 。 switchは match 。 繰り返し forはC#のforeachと同じ。 配列等から要素を順に取り出す。 図 foはC#のforeachとおなじ C言語のforのように 回数指定で繰り返したい 場合は、 range()関数 と組み合わせて使う。 図 forで回数指定したい colaboratoryを使う PythonのプログラムはGoogleが提供するcolaboratoryを使う。 1ノートブック=1ファイル ノートブック名=ファイル名 => ノートブック名を変更すること 変数のスコープはセル内ではない。セルを跨いで参照できる。 図 colaboratory 作成したノートブックはダウンロードすることをお勧めします。(Googleドライブに保存されるが) ”ファイル”メニューの”ダウンロード”で”.ipynbをダウンロード”。 ”ダウンロード”フォルダに保存されるので、Zドライブに保存してください。 次回は 練習問題の続き。 関数。

4月9日(木)4コマ目

イメージ
今日、やったこと Pythonの特徴 ブロック 変数 文字列結合 今日のホワイトボード Pythonは 今まで扱ってきたプログラミング言語(C、C#、Java)はC言語由来の言語。ルーツが一緒なので、同じように書くことができる。 PythonはC言語がルーツではないため、今までの言語と異なる点がある。 ブロック ブロックは処理のかたまり。 ifなら条件成立時・不成立時に実行する処理のかたまり for、whileなら繰り返し処理のかたまり 関数なら関数の処理のかたまり など。 C言語では  {    処理  } と{と}でブロックを作った。 Pythonは{}ではなく、インデント(字下げ)でブロックを作る 。 また、ブロックが続く(ifやfor、関数など)行末には:をつける。 図 インデント(字下げ)でブロックをつくる 変数 宣言不要。 代入時に型が決まる。 変数の型宣言的なこともできるが、あくまでも参考程度の扱い。異なる型のデータを代入してもエラーにはならない。 図 型を指定しても参考程度の扱い 文字列結合 C#やJavaとおなじように、+演算子は 足し算 文字列結合 の2つができる。 が、C#やJavaのように勝手の文字列型へ変換はしない。 よって、+で文字列結合をするには、+の両サイドをともに文字列型にする必要がある。 図 +演算子で文字列結合 文字列型への変換はstr()関数でできる。 次回は C言語(C#、Java)とPythonのちがうところのつづき。