Skip to content

Commit 5c1e9b5

Browse files
committed
flowchart for for
1 parent 2ba7b62 commit 5c1e9b5

File tree

4 files changed

+20
-23
lines changed

4 files changed

+20
-23
lines changed

1_Basics_I.ipynb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2994,7 +2994,7 @@
29942994
"name": "python",
29952995
"nbconvert_exporter": "python",
29962996
"pygments_lexer": "ipython3",
2997-
"version": "3.11.9"
2997+
"version": "3.12.2"
29982998
}
29992999
},
30003000
"nbformat": 4,

1_Basics_II.ipynb

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,7 @@
2929
},
3030
{
3131
"cell_type": "markdown",
32-
"metadata": {
33-
"jp-MarkdownHeadingCollapsed": true
34-
},
32+
"metadata": {},
3533
"source": [
3634
"## 基本データ型の変換"
3735
]
@@ -61,8 +59,7 @@
6159
{
6260
"cell_type": "markdown",
6361
"metadata": {
64-
"heading_collapsed": true,
65-
"jp-MarkdownHeadingCollapsed": true
62+
"heading_collapsed": true
6663
},
6764
"source": [
6865
"### 整数型・浮動小数点型 → 浮動小数点型・整数型"

1_Basics_III.ipynb

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,7 @@
6767
{
6868
"cell_type": "markdown",
6969
"metadata": {
70-
"heading_collapsed": true,
71-
"jp-MarkdownHeadingCollapsed": true
70+
"heading_collapsed": true
7271
},
7372
"source": [
7473
"## 組み込み関数"
@@ -382,8 +381,7 @@
382381
"cell_type": "markdown",
383382
"metadata": {
384383
"heading_collapsed": true,
385-
"hidden": true,
386-
"jp-MarkdownHeadingCollapsed": true
384+
"hidden": true
387385
},
388386
"source": [
389387
"### `range()`"
@@ -441,9 +439,7 @@
441439
"cell_type": "markdown",
442440
"metadata": {},
443441
"source": [
444-
"一瞬にして10億個の整数が準備される「驚愕の速さ!」と言いたいが、実は、「準備」されただけで、10億個の整数が生成された訳ではない。実際に使うときに、`0`、`1`、`2`、`3`、、、と**順番に**整数の生成が実行されことになる。このように、各整数を使うときに「実行」することを遅延評価(lazy evaluation)と呼ぶ。「何のために使うの?」と思うだろう。理由は高速化のためであり、実際に10億個の整数からなるリストの作成には数十秒もしくは数分掛かる。例えば、次のシナリオを考えてみよう。10億個の正の整数のルートを計算するとし、計算プロセスが始まった後に計算する整数の数は(確率的に)決まるとしよう。10億個全ての整数を使うかもしれないが、もしかすると、7万個、もしくはたった5個の整数のルート計算だけで終わるかもしれない。その場合、10億個の整数を事前に準備する時間は無駄になるかも知れないし、あまりにも非効率的な手順だということは直ぐに理解できるのではないだろうか。順番に`0`、`1`、`2`、`3`、、、と必要な場合に整数の作成を実行する方が断然効率的だ。このように遅延評価するオブジェクトをジェネレーター(generator)と呼ぶ。`range()`関数は、後述する`for`ループではよく使う関数なので覚えておこう!\n",
445-
"\n",
446-
"とする。用途が明確ではないと感じるかもしれないが,`for`ループで多用することになる。またリストとして表示するには`list()`を使う。\n"
442+
"一瞬にして10億個の整数が準備される「驚愕の速さ!」と言いたいが、実は、「準備」されただけで、10億個の整数が生成された訳ではない。実際に使うときに、`0`、`1`、`2`、`3`、、、と**順番に**整数の生成が実行されことになる。このように、各整数を使うときに「実行」することを遅延評価(lazy evaluation)と呼ぶ。「何のために使うの?」と思うだろう。理由は高速化のためであり、実際に10億個の整数からなるリストの作成には数十秒もしくは数分掛かる。例えば、次のシナリオを考えてみよう。10億個の正の整数のルートを計算するとし、計算プロセスが始まった後に計算する整数の数は(確率的に)決まるとする。10億個全ての整数を使うかもしれないが、もしかすると、7万個、もしくはたった5個の整数のルート計算だけで終わるかもしれない。その場合、10億個の整数を事前に作成する時間は無駄になるかも知れないし、あまりにも非効率的な手順だということは直ぐに理解できるのではないだろうか。順番に`0`、`1`、`2`、`3`、、、と必要な場合に整数の作成を実行する方が断然効率的だ。このように遅延評価するオブジェクトをジェネレーター(generator)と呼ぶ。`range()`関数は、後述する`for`ループではよく使う関数なので覚えておこう!"
447443
]
448444
},
449445
{

1_Basics_IV.ipynb

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1019,7 +1019,8 @@
10191019
"cell_type": "markdown",
10201020
"metadata": {
10211021
"heading_collapsed": true,
1022-
"hidden": true
1022+
"hidden": true,
1023+
"jp-MarkdownHeadingCollapsed": true
10231024
},
10241025
"source": [
10251026
"### 説明"
@@ -1056,7 +1057,8 @@
10561057
"cell_type": "markdown",
10571058
"metadata": {
10581059
"heading_collapsed": true,
1059-
"hidden": true
1060+
"hidden": true,
1061+
"jp-MarkdownHeadingCollapsed": true
10601062
},
10611063
"source": [
10621064
"### `print()`を使う例"
@@ -1153,17 +1155,17 @@
11531155
" \n",
11541156
" b1 = flow.Box(w=4.1, h=1).label('gdp_componentsの\\n'r'要素を $i$ に割り当てる')\n",
11551157
" flow.Arrow().down(sd.unit/4)\n",
1158+
"\n",
1159+
" b2 = flow.Box(w=3.2, h=1).label('毎回実行したい\\nコードを実行').drop('S')\n",
1160+
" flow.Arrow().down(sd.unit/4)\n",
11561161
" \n",
1157-
" d = flow.Decision(w=4.2, h=1.7, S='False', E='True'\n",
1158-
" ).label('最後の要素を\\n使い切ったか?').drop('E')\n",
1162+
" d = flow.Decision(w=4.2, h=1.7, S='False', W='True'\n",
1163+
" ).label('次の要素\\nはある?').drop('W')\n",
11591164
" \n",
1160-
" flow.Arrow().right(sd.unit/2)\n",
1161-
" flow.Start(w=2, h=1).label('END').anchor('W')\n",
1165+
" flow.Wire('c', k=-1.5, arrow='->').linewidth(1).to(b1.W)\n",
11621166
" \n",
11631167
" flow.Arrow().down(sd.unit/2.4).at(d.S)\n",
1164-
" b2 = flow.Box(w=3.2, h=1).label('毎回実行したい\\nコードを実行').drop('W')\n",
1165-
" \n",
1166-
" flow.Wire('c', k=-1.5, arrow='->').linewidth(1).to(b1.W)"
1168+
" flow.Start(w=2, h=1).label('END').anchor('N')"
11671169
]
11681170
},
11691171
{
@@ -1196,7 +1198,8 @@
11961198
"cell_type": "markdown",
11971199
"metadata": {
11981200
"heading_collapsed": true,
1199-
"hidden": true
1201+
"hidden": true,
1202+
"jp-MarkdownHeadingCollapsed": true
12001203
},
12011204
"source": [
12021205
"### `.append()`を使う例"
@@ -1284,6 +1287,7 @@
12841287
"metadata": {
12851288
"heading_collapsed": true,
12861289
"hidden": true,
1290+
"jp-MarkdownHeadingCollapsed": true,
12871291
"tags": [
12881292
"remove-cell"
12891293
]

0 commit comments

Comments
 (0)