X7ROOT File Manager
Current Path:
/usr/lib64/python3.8/turtledemo
usr
/
lib64
/
python3.8
/
turtledemo
/
ðŸ“
..
📄
__init__.py
(314 B)
📄
__main__.py
(13.91 KB)
ðŸ“
__pycache__
📄
bytedesign.py
(4.15 KB)
📄
chaos.py
(951 B)
📄
clock.py
(3.13 KB)
📄
colormixer.py
(1.31 KB)
📄
forest.py
(2.9 KB)
📄
fractalcurves.py
(3.39 KB)
📄
lindenmayer.py
(2.38 KB)
📄
minimal_hanoi.py
(2 KB)
📄
nim.py
(6.36 KB)
📄
paint.py
(1.26 KB)
📄
peace.py
(1.04 KB)
📄
penrose.py
(3.3 KB)
📄
planet_and_moon.py
(2.76 KB)
📄
rosette.py
(1.33 KB)
📄
round_dance.py
(1.76 KB)
📄
sorting_animate.py
(4.91 KB)
📄
tree.py
(1.37 KB)
📄
turtle.cfg
(160 B)
📄
two_canvases.py
(1.09 KB)
📄
yinyang.py
(820 B)
Editing: minimal_hanoi.py
#! /usr/bin/python3.8 """ turtle-example-suite: tdemo_minimal_hanoi.py A minimal 'Towers of Hanoi' animation: A tower of 6 discs is transferred from the left to the right peg. An imho quite elegant and concise implementation using a tower class, which is derived from the built-in type list. Discs are turtles with shape "square", but stretched to rectangles by shapesize() --------------------------------------- To exit press STOP button --------------------------------------- """ from turtle import * class Disc(Turtle): def __init__(self, n): Turtle.__init__(self, shape="square", visible=False) self.pu() self.shapesize(1.5, n*1.5, 2) # square-->rectangle self.fillcolor(n/6., 0, 1-n/6.) self.st() class Tower(list): "Hanoi tower, a subclass of built-in type list" def __init__(self, x): "create an empty tower. x is x-position of peg" self.x = x def push(self, d): d.setx(self.x) d.sety(-150+34*len(self)) self.append(d) def pop(self): d = list.pop(self) d.sety(150) return d def hanoi(n, from_, with_, to_): if n > 0: hanoi(n-1, from_, to_, with_) to_.push(from_.pop()) hanoi(n-1, with_, from_, to_) def play(): onkey(None,"space") clear() try: hanoi(6, t1, t2, t3) write("press STOP button to exit", align="center", font=("Courier", 16, "bold")) except Terminator: pass # turtledemo user pressed STOP def main(): global t1, t2, t3 ht(); penup(); goto(0, -225) # writer turtle t1 = Tower(-250) t2 = Tower(0) t3 = Tower(250) # make tower of 6 discs for i in range(6,0,-1): t1.push(Disc(i)) # prepare spartanic user interface ;-) write("press spacebar to start game", align="center", font=("Courier", 16, "bold")) onkey(play, "space") listen() return "EVENTLOOP" if __name__=="__main__": msg = main() print(msg) mainloop()
Upload File
Create Folder