Pythonを自分のパソコンにインストール
今日はアプリバージョンのProgateを使ってSQLの講座を2つ終了させました。Web版だと4つの講座と道場コースがあるのでそれは明日から始めていけたらと思います。
さて、昨日ProgateのPythonコースをすべて終了できたので今日はそれらを復習して1からコードを書いてみようと思ったのですが、自分のパソコン上でどうやってコードを書いていくのかが全く分からないことに気が付きました。
ということでいろいろと調べながら環境構築を始めました。Visual Studio Codeと
Anacondaをインストールし、Pythonを自分のパソコンで書けるようにしました。
実際にProgateで作った内容を自分のパソコンで書いてみると、Progate と違い答えも表示されないのでエラーが出た時自分で考えなければならないですし、1度やったことがあるものでも結構間違えるということがわかりました。
これからは毎日1つは何か簡単な成果物を作っていきたいなと考えています。自分の好きなものを作れるようになると思うとわくわくしてきます。
Progate 3日目 ~Python終了~
今日は何とかProgateでPython Ⅴを終わらすことができました。予定通り3日でPythonのProgateを終わらすことはできましたが、やはり初めてのプログラミングだったこともありよくわかっていない部分は多いです。
特に今日やったクラスと継承はもともと親クラスでどのように定義していたかを忘れてしまい、呼び出すときにどのようにコードを書けばいいのかなかなか進まないといったことが起こりました。なんとなく指示通りに進めて終わらせることはできましたが、1からすらすら作ることはまだ絶対にできそうにないです。
明日全体の総復習とどのような流れで作ったのかを確認し、自分のパソコン上に1から再現できるのかをやってみたいと思います。
また、今日はSQLのProgateもスタートさせました。SQLはPythonよりもかなり簡単な印象があります。5講座のうち1つはすらすらと終わらせることができました。
明日は
- ProgateのSQLを終わらせる
- ProgateのPythonを総復習し、自分で1から成果物を作れるようにする
- Pythonで数値計算のやり方を学び始める
- 何か今までのPythonの知識で自分に役立つものを考えて作ってみる
ということを目標にしてやっていきたいと思います。
Progate 2日目
Progate 2日目。今日はPythonのⅢとⅣを終了することができました。
昨日の後半にスライドの説明はほとんど見なくても絵を見て、あとはExerciseを解くだけですらすらとできると気づきました。しかし今日の内容は難しく、説明を読まないとわからないところが多かったです。そのため、昨日と同じように2つのLessonしか終わらせることができませんでした。
クラスとはいったい何なのか?なぜこんなもの使うのか?なぜファイルを分けて書いた方がいいのか?こういったことに躓き、なかなか進むことができませんでした。
しかし色々と考えながらやることで以下のようなことがわかってきました。
-
append()の()は関数をあらわしていたんだな。はlistにしろdictionaryにしろkeyとかitemとかの要素を一つずつ取り出すか一つずつ並べられているときに使うんだ。ペアになったら{}を使う。
-
関数の中にargumentを受け取るparameterがある場合にはそれをクオーテーションマークで囲ってはダメ
-
なぜ定義した関数と後で出てくる変数名が違うのだろう? →違う変数にしないと2つ定義が存在してしまうから。(上書きされてしまう?)
-
returnで返されるときに文字列を値として返すとき、print('string')ではなく、'string'だけにしないといけない。なぜならprint()は値valueではなく関数だから。
-
~.~~とドット(.)を使うときは他のファイル、モジュール、Standard library、クラスから関数を引っ張ってくるとき、またはクラスに作ったinstanceの変数を定めるとき。関数では()が付くがinstanceではつかない。
-
クラス内に作った関数(メソッド)の最初のparameterはなぜselfにしなければならないのか?→selfは後から呼び出されたinstanceを代入することができるparameter。だからメソッド内でself.nameなどself.~と定義しておけば後からすべてのinstanceについて共通のvariableを作っていく必要がなくなる。
-
クラス内で定義したメソッドの中でprint()を使って、あとでinstance methodとして呼び出した方が書く量が少なくて楽だと思ったが、ただの文字列のvalueとして返した方が後でprint()の値としてだけでなく、他の関数に代入できる値として利用できると気が付いた。
-
__init__メソッドはすべてのinstanceに共通する項目をアウトプットするのにとても便利。
-
ファイルを分割するのはコードが長くなりすぎないのを防ぐため。(Progateでやっていると1つのファイルにすべてのコードが書いてある方が流れを確認しやすくて便利だが、実際のプログラミングではとても長くなることがある。)
昨日引っかかったところも進めるうちにわかってきたので難しかったが理解を深めることができた1日でした。