PYZ is a Z-Machine interpreter written in Python 3 for playing text adventure games by Infocom and others. Currently PYZ supports only Version 3 of the Z-machine, and does not support the SAVE or RESTORE instructions. However, it does play Zork I.
It also has a mode where you can see the instructions being executed. The --trace option turns this on when you run PYZ.
There is also a test suite, pyztest, which tests all the instructions.
I learned Python in 7 days using Mark Lutz's Learning Python (3rd edition), then wrote this in another 7 days. So if you look at the code, you'll see hopefully some that is Pythonic, but some that is still Javonic. Even if there are no bugs, if you find something that needs to be Pythonified, please point it out!