Educational package to learn computational thinking and other basic programming concepts
Project description
EduWorld
EduWorld
is an educational python
package designed for students to learn computational thinking, algorithms, and other basic programming concepts. Through this process they learn how to divide a problem into smaller steps and refine them; to abstract; to recognize patterns; and to design and implement algorithms;
Robot
Conceptually it is based on Kumir Robot, with bits of Karel the Robot. (but shares no code)
- https://github.com/a-a-maly/kumir2
- https://github.com/TylerYep/stanfordkarel
- https://github.com/xsebek/karel
The Robot can walk in four cardinal directions, sense walls, temperature, radiation, and place/pickup beepers.
See the eduworld.robot
module for the list of all available procedural commands.
Oop version of the Robot is not yet completed and somewhat clumsy to use.
Interactive mode
from eduworld.robot import setup, shutdown
setup(world="demo-world", interactive=True, x=1, y=1)
shutdown(keep_window=True)
To launch Robot in interactive mode (immediate command execution), run python test_robot.py
.
In this mode Robot will not execute error shut-off even if you run it into the wall.
Command keys
- W - move up
- S - move down
- A - move left
- D - move right
- E - paint tile
- R - pickup beeper
- F - put beeper
- Q - quit
Plotter
The Plotter is used to paint lines on endless sheet of paper. It is conceptually based on Kumir Plotter, but with few extras.
See the eduworld.plotter
module for list of available commands.
Interactive mode
from eduworld.plotter import setup, shutdown
setup(interactive=True)
shutdown(keep_window=True)
To launch Plotter in interactive mode run python test_plotter.py
.
In this mode you can control plotter's head using following keys
- Keypad 8 - move up 1 unit
- Keypad 2 - move down 1 unit
- Keypad 4 - move left 1 unit
- Keypad 6 - move right 1 unit
- Keypad 9 - move up-right 1 unit
- Keypad 3 - move down-right 1 unit
- Keypad 1 - move down-left 1 unit
- Keypad 7 - move up-left 1 unit
- Keypad 0 - Move pen to origin (0, 0)
- Keypad - - zoom out
- Keypad + - zoom in
- W - randomly pick pen width
- E - randomly pick pen color
- R - raise pen
- F - lower pen
- Z - undo last line
- C - erase drawing
When you shutdown()
Plotter with keep_window=True
, you can use Keypad to move around the paper sheet.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file eduworld-0.0.21.tar.gz
.
File metadata
- Download URL: eduworld-0.0.21.tar.gz
- Upload date:
- Size: 29.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.27.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | da0fe1271e4ae3aee5a594384c825f23a12d09cddf9ddaf2deacbad71fa81760 |
|
MD5 | 8136c7d611e73fa30d5176b40e016bfe |
|
BLAKE2b-256 | 2550bf2837d022862c4502115ee4ac15268c696f7628679387c07924cb077773 |
File details
Details for the file eduworld-0.0.21-py3-none-any.whl
.
File metadata
- Download URL: eduworld-0.0.21-py3-none-any.whl
- Upload date:
- Size: 42.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.27.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b1f82344a20229594d5cf9d12c55db0560d6a46d1e209906b1347af0d2c3fa3 |
|
MD5 | 5a9eabfae97e5998bd3b8e187a964236 |
|
BLAKE2b-256 | 43de6ce839db297024594517215c1884a1396631eeaa88a9d891ed9b5fdf5403 |