pytudes
“An étude (a French word meaning study) is an instrumental musical composition, usually short, of considerable difficulty, and designed to provide practice material for perfecting a particular musical skill.” — Wikipedia
This project contains pytudes—Python programs, usually short, for perfecting particular programming skills.
Some programs are in Jupyter (.ipynb) notebooks, some in
.py files. For each notebook you can: - Click on co to run
the file on Colab - Click on dn to
run the notebook on DeepNote - Click on my to run the notebook
on MyBinder - Click on nb to
view the notebook on NBViewer - Click on the title to
view the notebook on github. - Hover over the title to
view a description.
Index of Jupyter (IPython) Notebooks
| Run | Logic and Number Puzzles |
|---|
co dn my nb | Chemical Element Spelling |
co dn my nb | Cryptarithmetic |
co dn my nb | Four 4s, Five 5s, and Countdown to 2016 |
co dn my nb | Gesture Typing |
co dn my nb | Ghost |
co dn my nb | How Many Soldiers Do You Need to Beat the Night King? |
co dn my nb | Let’s Code About Bike Locks |
co dn my nb | Pairing Socks |
co dn my nb | Portmantout Words |
co dn my nb | Refactoring a Crossword Game Program |
co dn my nb | Riddler Lottery |
co dn my nb | Sicherman Dice |
co dn my nb | Sol Golomb’s Rectangle Puzzle |
co dn my nb | Spelling Bee |
co dn my nb | The Devil and the Coin Flip Game |
co dn my nb | The Puzzle of the Misanthropic Neighbors |
co dn my nb | The Riddler: Battle Royale |
co dn my nb | Translating English Sentences into Propositional Logic Statements |
co dn my nb | How to Do Things with Words, or Statistical Natural Language Processing in Python |
co dn my nb | When Cheryl Met Eve: A Birthday Story |
co dn my nb | When is Cheryl’s Birthday? |
co dn my nb | World’s Longest Palindrome |
co dn my nb | xkcd 1313: Regex Golf (Part 2: Infinite Problems) |
co dn my nb | xkcd 1313: Regex Golf |
co dn my nb | xkcd 1970: Name Dominoes |
| Run | Computer Science Algorithms and Concepts |
|---|---|
| co dn my nb | Bad Grade, Good Experience |
| co dn my nb | BASIC Interpreter |
| co dn my nb | The Convex Hull Problem |
| co dn my nb | The Stable Matching Problem |
| co dn my nb | The Traveling Salesperson Problem |
Index of Python Files
| File | Description | Documentation |
|---|---|---|
| beal.py | Search for counterexamples to Beal’s Conjecture | documentation |
| docex.py | A framework for running unit tests,
similar to doctest |
|
| ibol.py | An Exercise in Species Barcoding | documentation |
| lettercount.py | Convert Google Ngram Counts to Letter Counts | documentation |
| lis.py | Lisp Interpreter written in Python | documentation |
| lispy.py | Even Better Lisp Interpreter written in Python | documentation |
| lispytest.py | Tests for Lisp Interpreters | |
| pal.py | Find long palindromes | documentation |
| pal2.py | Find longer palindromes | documentation |
| pal3.py | Find even longer palindromes | documentation |
| pytudes.py | Pre-process text to generate this README.md file. | |
| py2html.py | Pretty-printer to format Python files as html | |
| SET.py | Analyze the card game SET | documentation |
| spell.py | Spelling corrector | documentation |
| sudoku.py | Program to solve sudoku puzzles | documentation |
| testaccum.py | Tests for my failed Python
accumulation display proposal |
documentation |
| yaptu.py | Yet Another Python Templating Utility |
Etudes for Programmers
I got the idea for the “etudes” part of the name from this 1978 book by Charles Wetherell that was very influential to me when I was first learning to program. I still have my copy.
