# _Screen.__ini__() - _Screen().setup() bug demo from turtle import Screen, Turtle, mainloop class Nim(object): def __init__(self): self.screen = Screen() self.screen.setup(640, 480, -20, 20) WIDTH = self.screen.window_width() // 50 # gets wrong value print "Should be:", 640 // 50, "but is:", WIDTH # here you can look at the consequences: self.screen.tracer(False) for col in range(20): s = Turtle(visible=False) s.speed(0) s.penup() s.shape("square") s.shapesize(4, WIDTH/20.) packet, element = divmod(col, 5) x = (-21 + 11 * packet + 2 * element) * WIDTH s.setpos(x, 0) s.showturtle() self.screen.tracer(True) if __name__ == "__main__": nim = Nim() mainloop()