京都大学のPython講義資料：コラム編の紹介

# はじめに
こんにちは。
前回、[**京都大学のPython講義資料から見る重要単元**](https://qiita.com/H_Ny/items/dc3dcdcd3f4e9bff3eb1)
という記事を投稿させていただきました。今回はそちらの**コラム編**を見ていきたいと思います。
主に**「授業や講座では省かれてしまうけど大事なこと」**がよくまとまっていると感じました。
Pythonをなんとなく使っている人は意外と知らないことがあるかもしれないですね。

正直、読みやすいので講義資料編とは違いサクッと一通り読むことをおすすめします。
一応コラム編も記事にしておこうかなと思っただけなので参考にしたい人はどうぞ笑。

Pythonの基礎をおさらいしたい人は前回の記事と講義資料を読んでみてください。

関連:
[講義資料リポジトリ](https://repository.kulib.kyoto-u.ac.jp/dspace/handle/2433/245698)
[紹介記事-Qiita](https://qiita.com/tmdoi/items/9b56984ef29fdf6bc6a6)
[紹介記事-CodeZine](https://codezine.jp/article/detail/11999)

参考サイトまとめ：
[コメント文の書き方](https://www.slideshare.net/ssagawa/ss-14579535)
[AIエンジニアが気をつけたいPython実装のノウハウ・コツまとめ](https://qiita.com/sugulu/items/c0e8a5e6b177bfe05e99)


# この記事で何をするか
この記事では、京都大学様の講義資料（コラム編）の中から、私の個人的な見解でランク付けを行いたいと思います。
私も初学者ですので、ご意見があればコメントお願いします。

# 記事の対象
Pythonなんとなく使えるけど一歩先の知識が欲しい！って人
# ランク付け
割と適当ですがランク付けしてます。参考にどうぞ

例 : **1.コンピュータとプログラミング（☆☆☆）**


|ランク|意味|
|---|---|
|☆☆☆|必須な知識|
|☆☆|豆知識|
|☆|知らなくてもいいかなと思える部分|

#### 0. コラム　０　始まり(☆☆)
添え字が0から始まることについて。既知と思いますがさらっと読んでおきましょう。

#### 1. コラム　Floatって？(☆☆)


|章|タイトル|ランク|概要|
|:---|:---|:---|:---|
|1.1|浮動小数点|☆☆|常識的な部分ですが、さらっとで大丈夫です。|
|1.2|2進数で浮動小数点を扱うことの嫌な点|☆☆|知っておきましょう。|


#### 2. コラム　ニュートン法(☆☆)

|章|タイトル|ランク|概要|
|:---|:---|:---|:---|
|2.1|ニュートン法|☆☆|最後の式をプログラムで再現してみましょう。|
|2.2|n乗根を求める|☆☆|同上。|
|2.3|平均律|☆|読まなくて良いです。|

#### 3.コラム　相対精度(☆)
**飛ばして大丈夫です。**

|章|タイトル|ランク|概要|
|:---|:---|:---|:---|
|3.1|数値の精度|☆||
|3.2|絶対精度と相対精度|☆||


#### 4. コラム　仮引数と実引数(☆☆☆)
よく出てくる言葉です。用語は知っておきましょう。


#### 5. コラム　変数のスコープ(☆☆☆)
内容は大切なことですが、正直わかりにくいです。
変数や関数について理解できているのであれば自分で調べた方が良いです。

|章|タイトル|ランク|概要|
|:---|:---|:---|:---|
|5.1|ローカル変数=捨てる変数|☆☆|
|5.2|Pythonでの変数のスコープ|☆☆☆|


#### 6. コラム　乱数(☆☆☆)
使用例を調べて自分でも実行してみると良いと思います。

|章|タイトル|ランク|概要|
|:---|:---|:---|:---|
|6.1|コンピュータと乱数|☆|読まなくても良いです。|
|6.2|使いたい乱数|☆☆☆|乱数を使いたい場面の想定です。　イメージしながら読みましょう。|
|6.3|Randomモジュールを使う|☆☆☆|標準モジュールを使った方法が紹介されています。可能であれば実際に実行してみましょう。|
|6.4|一定の確率で実行する|☆☆|意外と使う|
|6.5|Numpyでの乱数生成|☆☆☆|Numpy便利です。実行してみましょう。|

#### 7. コラム　再帰(☆☆)
難しければ飛ばしても構いません。

|章|タイトル|ランク|概要|
|:---|:---|:---|:---|
|7.1|数式を処理すること|☆||
|7.2|関係代名詞|☆||
|7.3|再起|☆☆|そういうことできるんだな〜って感じ。興味あれば。|

#### 8. コラム　GUI
|章|タイトル|ランク|概要|
|:---|:---|:---|:---|
|8.1|GUIとは|☆☆☆|常識用語です|
|8.2|ソフトウェア開発の大変さ|☆☆☆|知っておきましょう。|
|8.3|排除と包摂|☆☆|読んでおくと良いと思います。|


#### 9. コラム　プログラムと日本語(☆☆☆)
|章|タイトル|ランク|概要|
|:---|:---|:---|:---|
|9.1|PythonではUTF-8|☆☆☆|常識です。windwosはshift-jis。|
|9.2|ソースコード上の文字コード謝り|☆☆☆|注意しましょう|
|9.3|¥記号に要注意|☆☆☆|¥nについて。意外と知らずに歩いてしまう。|


#### 10. コラム　名前空間(☆☆☆)
|章|タイトル|ランク|概要|
|:---|:---|:---|:---|
|10.1|名前の混乱|☆☆|わかりやすい例えです|
|10.2|コンピュータの名前空間|☆☆☆|常識です。なんとなく使わないようにしましょう。|


#### 11. コラム　プログラムの文書化(☆☆☆)
これは特に読んだ方が良いです。詳しくは書いてないので、参考ページを載せておきます。
・[コメント文の書き方](https://www.slideshare.net/ssagawa/ss-14579535)
[・AIエンジニアが気をつけたいPython実装のノウハウ・コツまとめ](https://qiita.com/sugulu/items/c0e8a5e6b177bfe05e99)

|章|タイトル|ランク|概要|
|:---|:---|:---|:---|
|11.1|プログラムはすぐに分からなくなる|☆☆☆|プログラムなんて書いた本人も分かりません。|
|11.2|プログラムの文書化|☆☆☆|コメント文はこまめに書きましょう。|
|11.3|docstring|☆☆|知らなくても良いです。|

#### 12. コラム　三角関数(☆☆)
飛ばしても大丈夫です。

|章|タイトル|ランク|概要|
|:---|:---|:---|:---|
|12.1|ものづくりと三角関数|☆☆||
|12.2|波としての三角関数|☆☆☆||
|12.3|波形の違いを音として聞いてみる|☆||

#### 13. コラム　参照と複製(☆☆☆)
必ず読んでおきましょう。
値渡し、参照渡しも合わせて調べると良いと思います。

|章|タイトル|ランク|概要|
|:---|:---|:---|:---|
|13.1|情報の参照と複製、その損失|☆☆☆|たとえ話です。|
|13.2|ミュータブルとイミュータブル|☆☆☆|ややこしい話ですが大切です。読みましょう。|



# おわりに
最後までご覧いただきありがとうございました。
コラム編は以上になります。講義資料よりボリュームが少ないですが、少し理解に時間を要する部分もありますね。

Pythonを独学しているとふと躓くような内容がきちんとまとまっています。
しかしながら、基礎ばかりですので自分のやりたいことに沿って学習することが一番です。
競プロの過去問に挑戦するのもおすすめです。

はじめに書いたように、こちらの教材にはPythonの基礎をまとめた**講義資料編**があります。
ぜひ読むことをおすすめします。
[**京都大学のPython講義資料から見る重要単元**](https://qiita.com/H_Ny/items/dc3dcdcd3f4e9bff3eb1)

**こちらの記事は以上となります。もし質問があればコメントを頂ければ対応します。ありがとうございました。**