maze/maze/__init__.py

49 lines
1.2 KiB
Python

import copy
import random
class CS235Maze(object):
def __init__(self, data, size=8):
self.data = data
self.size = size
def __str__(self):
r = derp_transpose(self.data)
rs = ''
for i in xrange(self.size):
for j in xrange(self.size):
for k in xrange(self.size):
rs += '{} '.format(r[i][j][k])
rs += '\n'
rs += '\n'
return rs
def make_maze(size=8):
r = [[[0] * size] * size] * size
for i in xrange(size):
for j in xrange(size):
r[i][j] = [random.randint(0, 1) for i in xrange(size)]
r[0][0][0] = 1
r[7][7][7] = 1
return CS235Maze(r, size)
def parse_maze(filename):
f = open(filename, 'r')
t = f.read()
soilded = [[[int(i) for i in j.split()]
for j in k.split('\n')]
for k in t.split('\n\n') if k]
cleaned = derp_transpose(soilded)
return cleaned
def derp_transpose(s, size=8):
r = copy.deepcopy(s)
for i in xrange(size):
for j in xrange(size):
for k in xrange(size):
r[i][j][k] = s[k][j][i]
return r