def lifegame(data, steps):
data = copy.deepcopy(data)
results = i2a.array.make1d(steps)
for i in range(0, steps):
results[i] = data
data = lifegame_step(data)
return results
で make1d で作成した1次元配列 results のresults[i] に2次元配列 data を入れることで3次元配列を作成したように,Python の配列(リスト)では,もともと数字が入っていた要素を配列で置き換えることができます.そのため,同様に1次元配列の要素に3次元配列を入れることで4次元配列を作成することができます.
mkdir ~/algo18のようにします.そして,ターミナルを開くたびに
cd ~/algo18 jupyter notebookと入力してJupyter Notebookを動かしてください.詳しくは,はいぱーワークブック「14.4 コマンドを使ったファイル操作」を参照してください.
cd ~/algo18を済ませてから,
python vote.py 選択肢番号のように使います.
Jupyter Notebookを使いながら(一旦終了せずに),投票システムも使うには,ターミナルのメニューバーの「シェル」->「新規タブ」を選ぶか,[Command]+[T]で別のタブを開いて(あるいは[Command]+[N]で別のウィンドウを開いて),投票システムを使うことをお勧めします.このあたりのことは,「はいぱーワークブック」の15.4 ターミナルの便利な使い方に書いてあるので参考にしてください.


cd ~/algo18と入力してください.これらの機能を使うと,Jupyter Notebookを抜けずにvoteできます.
ターミナルの基本的な使い方は,はいぱーワークブックの15.2 ターミナルの基本的な使い方を,より高度な使い方は,15.4 ターミナルの便利な使い方を参照してください.
cdというコマンドと「~」の意味は,はいぱーワークブックの14.4 コマンドを使ったファイル操作の14.4.1 ディレクトリを読むと分かります.