My best friend tests his 5 year old basic math questions from store-bought material which is good for one time use (his son memorizes the answers) …. but he wants to give him more practice.
That's the reason for me to look into an automate way to get the job done.
With the Math Worksheet Generator, you can create a PDF with unique questions, as needed, in a fraction of second.
There are five choices:
Install required package with the following command:
pip install -r requirements.txt
python3 run.py --type [+|-|x|/|mix] --digits [1|2|3] [-q|--question_count] [int] --output [custom-name.pdf]
For addition only worksheet:
python3 run.py --type +
For calculation up to 3 digits range:
python3 run.py --digits 3
For generating different number of question, eg. 100 (default is 80):
python3 run.py -q 100
python3 run.py --question_count 100
For custom output filename (default is worksheet.pdf):
python3 run.py --output custom-name.pdf
Everything is written in python in
run.py. You can play with the font and grid size with the variables under the
# Basic settings section.
I appreciate all suggestions or PRs which will help kids learn math better. Feel free to fork the project and create a pull request with your idea.
My long time friend San for the inspiration of this project and lovely sons Tim and Hin. Thanks thedanimal for reviewing this README and adding new features.
Also, thank you for the love and support form the Reddit Python community. You guys are amazing and are helping me to make this project better.
Thanks k1m0ch1 for sharing this heartwarming story:
...I made this card for my kid, and then the teacher asks me if I can make some for the kids, well its generated anyway and very helpful, and the next day he asks me to make for a whole class, and next day he wants me to make for a whole school, and a weeks later other schools want me to help to make for a whole school.
more than 1000 generated file, with a custom filename for every kid and sent to the email I'm doing it for free, while you made this free, love it <3
Thank you for your coverage.