2019年7月31日水曜日

開発環境

Head First はじめてのプログラミング ―頭とからだで覚えるPythonプログラミング入門 (Eric Freeman(著)、嶋田 健志(監修)、木下 哲也(翻訳)、株式会社オライリー・ジャパン)を11章(ウィジェット、イベント、創発的な振る舞い - インタラクティブにする)のコードマグネット(480ページ)の解答を求めてみる。

コード

Python 3

#!/usr/bin/env python3
from model_step1 import count_neighbors

from unittest import TestCase, main


class MyTest(TestCase):
    def setUp(self):
        pass

    def tearDown(self):
        pass

    def test(self):
        pass


width = 100
height = 100
grid_model = [[0 for _ in range(width)]
              for _ in range(height)]


def next_gen() -> None:
    for i in range(height):
        for j in range(width):
            cell = 0
            count = count_neighbors(grid_model, i, j)
            if grid_model[i][j] == 0:
                if count == 3:
                    cell = 1
            elif grid_model[i][j] == 1:
                if count == 2 or count == 3:
                    cell = 1
    for row in grid_model[:10]:
        print(row[:10])


next_gen()

入出力結果(Bash、cmd.exe(コマンドプロンプト)、Terminal、Jupyter(IPython))

$ ./sample1.py
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
$ 

0 コメント:

コメントを投稿