本文整理汇总了Python中game_of_life.GameOfLife类的典型用法代码示例。如果您正苦于以下问题:Python GameOfLife类的具体用法?Python GameOfLife怎么用?Python GameOfLife使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了GameOfLife类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_glider
def test_glider(self):
gol = GameOfLife()
gol.set_alive(dict(x=1, y=1), dict(x=2, y=1), dict(x=3, y=1), dict(x=1, y=2), dict(x=2, y=3))
gol.next_step()
self.assertEqual(set(['3:2', '1:1', '1:2', '2:1', '2:0']), gol.table)
示例2: test_get_neighbors
def test_get_neighbors(self):
gol = GameOfLife()
gol.set_alive(dict(x=2, y=1), dict(x=3, y=1), dict(x=2, y=2), dict(x=3, y=2), dict(x=3, y=3))
neighbors_count = gol.get_neighbors_count(dict(x=1, y=1))
self.assertEqual(2, neighbors_count)
neighbors_count = gol.get_neighbors_count(dict(x=2, y=1))
self.assertEqual(3, neighbors_count)
neighbors_count = gol.get_neighbors_count(dict(x=3, y=1))
self.assertEqual(3, neighbors_count)
neighbors_count = gol.get_neighbors_count(dict(x=3, y=1))
self.assertEqual(3, neighbors_count)
neighbors_count = gol.get_neighbors_count(dict(x=2, y=2))
self.assertEqual(4, neighbors_count)
neighbors_count = gol.get_neighbors_count(dict(x=3, y=2))
self.assertEqual(4, neighbors_count)
neighbors_count = gol.get_neighbors_count(dict(x=3, y=3))
self.assertEqual(2, neighbors_count)
示例3: test_tick_with_one_death
def test_tick_with_one_death(self):
seed = set([(0,0)])
game = GameOfLife(seed)
game.tick()
self.assertEqual(game.alive_cells, set())
示例4: test_next_cell_status_IV
def test_next_cell_status_IV(self):
gol = GameOfLife()
gol.set_alive(dict(x=2, y=2), dict(x=2, y=4), dict(x=3, y=3), dict(x=3, y=4))
status = gol.next_cell_status(dict(x=2, y=3))
self.assertFalse(status)
示例5: test_get_neighbors_count_zero
def test_get_neighbors_count_zero(self):
gol = GameOfLife()
gol.set_alive(dict(x=2, y=2), dict(x=2, y=4), dict(x=3, y=3), dict(x=3, y=4), dict(x=5, y=-3))
count = gol.get_neighbors_count(dict(x=-1, y=-1))
self.assertEqual(0, count)
示例6: test_tick_with_one_birth
def test_tick_with_one_birth(self):
seed = set([(1, 0), (2, 2), (0, 1)])
game = GameOfLife(seed)
game.tick()
self.assertEqual(game.alive_cells, set([(1, 1)]))
示例7: play_game
def play_game(self):
while True:
pygame.time.wait(1000)
self.clock.tick(10)
self.draw_cells()
pygame.display.update()
for event in pygame.event.get():
print(event)
escape = event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE
if event.type == pygame.QUIT:
pygame.quit()
elif event.type == escape:
pass
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_r:
self.restart()
elif event.type == pygame.MOUSEBUTTONDOWN:
mousebuttondown = True
while mousebuttondown:
pos = pygame.mouse.get_pos()
self.new_cell(Vec2D(pos[0]/configs.PIXEL_SIZE, pos[1]/configs.PIXEL_SIZE))
self.game = GameOfLife(self.generation)
self.draw_cells()
pygame.display.update()
for event in pygame.event.get():
if event.type == pygame.MOUSEBUTTONUP:
mousebuttondown = False
self.generation = self.game.next_generation()
self.game = GameOfLife(self.generation)
示例8: test_set_dead_not_present
def test_set_dead_not_present(self):
gol = GameOfLife()
gol.set_dead(dict(x=2, y=4))
self.assertFalse('2:4' in gol.table)
self.assertEqual(0, len(gol.table))
示例9: run_game
def run_game(size):
gol = GameOfLife(size)
display = Display()
while True:
display.show_board(gol.get_board())
time.sleep(1)
示例10: test_initialize_board_to_correct_size
def test_initialize_board_to_correct_size(self):
test_object = GameOfLife(2)
board = test_object.get_board()
self.assertEqual(len(board), 2)
self.assertEqual(len(board[0]), 2)
self.assertEqual(len(board[1]), 2)
示例11: test_tick_with_all_survivors
def test_tick_with_all_survivors(self):
seed = set([(1, 0), (2, 0), (1, 1), (2, 1)])
game = GameOfLife(seed)
game.tick()
self.assertEqual(game.alive_cells, seed)
示例12: test_set_dead
def test_set_dead(self):
gol = GameOfLife()
gol.set_alive(dict(x=2, y=4))
gol.set_alive(dict(x=1, y=5))
gol.set_dead(dict(x=2, y=4))
self.assertFalse('2:4' in gol.table)
self.assertTrue('1:5' in gol.table)
self.assertEqual(1, len(gol.table))
示例13: test_blinker
def test_blinker(self):
gol = GameOfLife()
gol.set_alive(dict(x=2, y=3), dict(x=2, y=4), dict(x=2, y=2))
gol.next_step()
self.assertTrue('1:3' in gol.table)
self.assertTrue('2:3' in gol.table)
self.assertTrue('3:3' in gol.table)
self.assertEqual(3, len(gol.table))
示例14: test_get_important_cells_I
def test_get_important_cells_I(self):
gol = GameOfLife()
gol.set_alive(dict(x=2, y=3))
cells = sorted(tuple(gol.get_important_cells()))
self.assertEqual(
sorted((dict(x=1, y=3), dict(x=1, y=2), dict(x=2, y=2), dict(x=3, y=2), dict(x=3, y=3), dict(x=3, y=4), dict(x=2, y=4), dict(x=1, y=4))),
cells
)
示例15: test_dead_neighbours
def test_dead_neighbours(self):
seed = set([(0, 0), (1, 1)])
game = GameOfLife(seed)
neighbours = game.dead_neighbours((0, 0))
cells_expected = set([(-1, -1), (0, -1), (1, -1),
(-1, 0), (1, 0),
(-1, 1), (0, 1), ])
self.assertEqual(neighbours, cells_expected)