Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/.typo-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,9 @@ excluded_files:
excluded_words:
- typoci
- OpenInColab
- ipynb
- ipython
- nbformat

# Would you like filenames to also be spellchecked?
spellcheck_filenames: true
2 changes: 2 additions & 0 deletions docs/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,5 @@ Python やアルゴリズムについて簡単にまとめていこうかなと
10/10 第一周の分を執筆

10/10 練習問題を追加

10/16 練習問題をさらに追加
2 changes: 1 addition & 1 deletion docs/python/01google-colaboratory/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,6 @@ Google アカウントを用意してログインしておいてください。

![新規ファイル](./new-file.jpg)

セルの中に `print("Hello World!")` のように書いて、`Ctrlキー` と `Enterキー` を同時に押すと、実行させることができます
セルの中に `print("Hello World!")` のように書いて、`Ctrlキー` と `Enterキー` を同時に押すと、任意の Python のコードを実行させることができます

![実行後](./run.jpg)
13 changes: 8 additions & 5 deletions docs/python/02get-started/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -11,25 +11,28 @@ import Answer from "@site/src/components/Answer";

はじめてのプログラムを書いてみましょう。

プログラミングの世界では、まず `Hello World!` と表示させるのが慣例になっています。以下のコードを実行してみましょう
プログラミングの世界では、まず画面上に `Hello World!` と表示させるのが慣例になっています。以下のコードが画面上に `Hello World!` と表示するプログラムです。以下のコードを Google Colaboratory 上で実行してみましょう

<ViewSource path="_samples/hello-world.ipynb" />

`Hello World!` と表示されましたか。

`print` は画面に文字列を表示させる命令です。`"` で括った文字列が表示されます
`print` は画面に文字列を表示させる命令です。`"` で括った文字列が画面に表示されます

### 問題
### 練習問題

`Hello from Python!` と出力するようなプログラムを書いてみましょう。
先程のプログラムを少し変えて、`Hello from Python!` と出力するようなプログラムを書いてみましょう。

<Answer>

`"` で括られた文字列を `Hello World!` から次のように `Hello from Python` に変えれば、完成です。

<ViewSource path="_samples/hello-from-python.ipynb" />
</Answer>

## コメント

`#` から文末まではコメントとして扱われます。
プログラムの説明や一時的にあるコードを実行しないようにするときに使われます
プログラムを読みやすくするために説明を書くときや一時的にあるコードを実行しないようにするときなどによく使われます

<ViewSource path="_samples/comment.ipynb" />
2 changes: 1 addition & 1 deletion docs/python/03expressions/_samples/cube.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
}
],
"source": [
"4/3*3.14*2**3"
"4 / 3 * 3.14 * 2 ** 3"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion docs/python/03expressions/_samples/div.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
}
],
"source": [
"4/2"
"4 / 2"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion docs/python/03expressions/_samples/exp.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
}
],
"source": [
"2**3"
"2 ** 3"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion docs/python/03expressions/_samples/golden-ratio.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
}
],
"source": [
"(1+5**0.5)/2"
"(1 + 5 ** 0.5) / 2"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion docs/python/03expressions/_samples/multi.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
}
],
"source": [
"2*2"
"2 * 2"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion docs/python/03expressions/_samples/quotient.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
}
],
"source": [
"5//2"
"5 // 2"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion docs/python/03expressions/_samples/remainder.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
}
],
"source": [
"5%2"
"5 % 2"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion docs/python/03expressions/_samples/sub.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
}
],
"source": [
"2-1"
"2 - 1"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion docs/python/03expressions/_samples/sum.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
}
],
"source": [
"1+1"
"1 + 1"
]
}
],
Expand Down
4 changes: 2 additions & 2 deletions docs/python/03expressions/_samples/sum2.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"cells": [
{
"cell_type": "code",
"execution_count": 8,
"execution_count": 1,
"metadata": {},
"outputs": [
{
Expand All @@ -14,7 +14,7 @@
}
],
"source": [
"print(1+1)"
"print(1 + 1)"
]
}
],
Expand Down
22 changes: 14 additions & 8 deletions docs/python/03expressions/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,16 @@ import Answer from "@site/src/components/Answer";

## 式と演算子

Python で計算をしてみましょう。次のように書くと、演算をすることができます
Python で計算をしてみましょう。次のように書くと、$1+1$ を Python で計算し、その結果を表示することができます

<ViewSource path="_samples/sum.ipynb" />

:::tip
Python では、演算子の前後の半角スペースは無視されます。そのため、読みやすくするために半角スペースを入れていますがなくても同じように動きます。

ただし、全角スペースが入っているとエラーが出てしまうのでプログラムを書くときには絶対に全角スペースを入れないように気をつけましょう。
:::

:::info
上のプログラムは、次のようにしても実行できます。それぞれには、少し違いがあるようですが気にしなくて大丈夫でしょう。

Expand All @@ -21,7 +27,7 @@ Google Colaboratory 以外で実行するときなど上のようなプログラ
<ViewSource path="_samples/sum2.ipynb" />
:::

Python では様々な計算ができます
Python では足し算以外にも次のように様々な計算をすることができます

| 演算子 | 説明 | 例 |
| ------ | ------ | ---------------------------------------------- |
Expand All @@ -31,20 +37,20 @@ Python では様々な計算ができます。
| `/` | 割る | <ViewSource path="_samples/div.ipynb" /> |
| `**` | べき乗 | <ViewSource path="_samples/exp.ipynb" /> |
| `//` | 商 | <ViewSource path="_samples/quotient.ipynb" /> |
| `%` | 余り | <ViewSource path="_samples/remainder.ipynb" /> |
| `%` | 剰余 | <ViewSource path="_samples/remainder.ipynb" /> |

括弧`(`、`)` を用いて、複雑な計算もできます
黄金比 $\frac{1+\sqrt{5}}{2}$ を計算してみましょう
括弧`(`、`)` を用いることで、複雑な計算をすることもできます
黄金比を計算してみましょう。黄金比は、$\frac{1+\sqrt{5}}{2}$ で与えられます

<ViewSource path="_samples/golden-ratio.ipynb" />

:::note
平方根は 0.5 乗とします
平方根は 0.5 乗とすることで計算できます
:::

### 問題
### 練習問題

球の体積( $\frac{4}{3}\pi r^3$ )を求めてみましょう。$\pi=3.14, r=2$ とします。
球の体積を求めてみましょう。球の体積は $\frac{4}{3}\pi r^3$ で与えられ、$\pi=3.14, r=2$ とします。

<Answer>
<ViewSource path="_samples/cube.ipynb" />
Expand Down
10 changes: 5 additions & 5 deletions docs/python/04variables/_samples/cube.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"cells": [
{
"cell_type": "code",
"execution_count": 2,
"execution_count": 1,
"metadata": {},
"outputs": [
{
Expand All @@ -11,15 +11,15 @@
"33.49333333333333"
]
},
"execution_count": 2,
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"PI=3.14\n",
"r=2\n",
"4/3*PI*r**3"
"PI = 3.14\n",
"r = 2\n",
"4 / 3 * PI * r ** 3"
]
}
],
Expand Down
2 changes: 1 addition & 1 deletion docs/python/04variables/_samples/sound-velocity.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
}
],
"source": [
"331.5+0.6*10"
"331.5 + 0.6 * 10"
]
}
],
Expand Down
4 changes: 2 additions & 2 deletions docs/python/04variables/_samples/sound-velocity2.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
}
],
"source": [
"t=10\n",
"331.5+0.6*t"
"t = 10\n",
"331.5 + 0.6 * t"
]
}
],
Expand Down
4 changes: 2 additions & 2 deletions docs/python/04variables/_samples/substitution.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
}
],
"source": [
"x=1\n",
"x=x+1\n",
"x = 1\n",
"x = x + 1\n",
"x"
]
}
Expand Down
54 changes: 54 additions & 0 deletions docs/python/04variables/_samples/substitution2.ipynb
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"5"
]
},
"execution_count": 1,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"x = 2\n",
"y = 3\n",
"y = x + y\n",
"y"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3.10.6 64-bit",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.6"
},
"orig_nbformat": 4,
"vscode": {
"interpreter": {
"hash": "916dbcbb3f70747c44a77c7bcd40155683ae19c65e1c03b4aa3499c5328201f1"
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}
30 changes: 25 additions & 5 deletions docs/python/04variables/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import Answer from "@site/src/components/Answer";

## 変数

前項のようにして、10℃ での音速を求めてみましょう。
前項のようにして、10℃ での音速を求めてみましょう。$V$ を音速、$t$ を摂氏温度とすると、音速は次のようにして求められるとします。

$$
V=331.5+0.6t
Expand All @@ -19,12 +19,14 @@ $$

一応できましたが、 $t$ を変えようとすると、(これぐらいならすぐできますが)いちいちプログラムを全て読み直さないといけません。

しかし、Python では変数が使えます。変数を使うと、より簡単に記述できます
しかし、Python では変数が使えます。変数は数値や文字列を入れられる箱のようなもので、任意の数値や文字列を格納することができます。そのため、変数を使うと、次のようにより簡単に記述できます

<ViewSource path="_samples/sound-velocity2.ipynb" />

このようにすれば、例えば 10℃ ではなく 20℃ のときの音速を求めたくなったときに `t = 20` とするだけでよくなり、より簡単にプログラムを変更することができます。

:::note
Python では、数学とは違い `=` は代入という意味です
Python では、数学とは違い `=` は右の結果を左の変数に代入するという意味です
そのため、次のようなプログラムを実行すると 2 が出力されます。

<ViewSource path="_samples/substitution.ipynb" />
Expand All @@ -34,10 +36,28 @@ Python では、数学とは違い `=` は代入という意味です。
Python では定数は使えないようです。慣習的に定数は大文字のみの変数として表すようです。
:::

### 問題
### 練習問題 1

[式と演算子の項](/docs/python/03expressions/#問題)の問題を変数を使って解いてみましょう
[式と演算子の項](/docs/python/03expressions/#問題)の練習問題を変数を使って解いてみましょう

<Answer>
<ViewSource path="_samples/cube.ipynb" />
</Answer>

### 練習問題 2

次のプログラムを実行すると、どのような数字が出力されるか考えてみてください。

```python
x = 2
y = 3
y = x + y
y
```

<Answer>

3 行目では、`x + y` の値が評価されてその結果が `y` に代入されます。そのため、$2+3=5$ が `y` に代入され `5` が出力されます。

<ViewSource path="_samples/substitution2.ipynb"/>
</Answer>