Coding_for_Crosswords_in_Py.../a.py

41 lines
939 B
Python

class Grid:
def __init__(self, n):
self.name = n
self.lines = []
def rows(self):
return len(self.lines)
def cols(self):
if self.lines == []:
return 0
else:
return len(self.lines[0])
def Load(self):
self.lines.append("DOG....")
self.lines.append("---....")
self.lines.append("----...")
self.lines.append("-------")
self.lines.append("...----")
self.lines.append("....---")
self.lines.append("....CAT")
def Check(self):
for s in self.lines:
assert len(s) == self.cols()
def Print(self):
print(f"Grid: {self.name} "
f"(rows={self.rows()},"
f" cols={self.cols()})")
for s in self.lines:
print(f" {''.join(s)}")
if __name__ == "__main__":
grid = Grid("MY GRID")
grid.Load()
grid.Check()
grid.Print()