Python programs, usually short, of considerable difficulty, to perfect particular skills.

Overview
Peter Norvig
MIT License
2015-2020

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.

Who is this for?

To continue the musical analogy, some people think of programming like Spotify: they want to know how to install the app, find a good playlist, and hit the "play" button; after that they don't want to think about it. There are plenty of other tutorials that will tell you how to do the equivalent of that for various programming tasks—this one won't help. But if you think of programming like playing the piano—a craft that can take years to perfect—then I hope this collection can help.

Index of Jupyter (IPython) Notebooks

For each notebook you can:

  • Click on c to run the notebook on Colab
  • Click on d to run the notebook on DeepNote
  • Click on m to run the notebook on MyBinder
  • Click on n to view the notebook on NBViewer
  • Click on the title to view the notebook on github.
  • Hover over the title to view a description.
Run Year Recent (2021)
c d m n 2021 Advent of Code 2021
c d m n 2021 Mel's Konane Board
c d m n 2021 KenKen (Sudoku-like Puzzle)
c d m n 2021 Star Battle (Sudoku-like Puzzle)
c d m n 2021 Sudoku: 100,000 puzzles/second in Java
c d m n 2021 CrossProduct
c d m n 2021 Split the States
Run Year Programming Examples
c d m n 2021 Advent of Code 2021
c d m n 2020 Advent of Code 2020
c d m n 2018 Advent of Code 2018
c d m n 2017 Advent of Code 2017
c d m n 2016 Advent of Code 2016
c d m n 2018 Beal's Conjecture Revisited
c d m n 2020 Bicycling Statistics
c d m n 2018 Can't Stop
c d m n 2019 Chaos with Triangles
c d m n 2017 Conway's Game of Life
c d m n 2020 Generating and Solving Mazes
c d m n 2021 Mel's Konane Board
c d m n 2020 Photo Focal Lengths
c d m n 2018 Pickleball Tournament
c d m n 2017 Project Euler Utilities
c d m n 2020 Tracking Trump: Electoral Votes
Run Year Logic and Number Puzzles
c d m n 2014 Cryptarithmetic
c d m n 2018 Euler's Sum of Powers Conjecture
c d m n 2020 Four 4s, Five 5s, and Countdowns
c d m n 2021 KenKen (Sudoku-like Puzzle)
c d m n 2019 Pairing Socks
c d m n 2018 Sicherman Dice
c d m n 2014 Sol Golomb's Rectangle Puzzle
c d m n 2021 Star Battle (Sudoku-like Puzzle)
c d m n 2006 Sudoku
c d m n 2021 Sudoku: 100,000 puzzles/second in Java
c d m n 2020 Square Sum Puzzle
c d m n 2020 When is Cheryl's Birthday?
c d m n 2015 When Cheryl Met Eve: A Birthday Story
c d m n 2015 xkcd 1313: Regex Golf
c d m n 2015 xkcd 1313: Regex Golf (Part 2: Infinite Problems)
Run Year Word Puzzles
c d m n 2020 Boggle / Inverse Boggle
c d m n 2020 Chemical Element Spelling
c d m n 2020 Equilength Numbers: FOUR = 4
c d m n 2017 Gesture Typing
c d m n 2017 Ghost: A Word game
c d m n 2018 How to Do Things with Words: NLP in Python
c d m n 2020 Jotto: A Word Guessing Game
c d m n 2015 Let's Code About Bike Locks
c d m n 2017 Scrabble: Refactoring a Crossword Game Program
c d m n 2020 Spelling Bee
c d m n 2017 Translating English into Propositional Logic
c d m n 2017 World's Longest Palindrome
c d m n 2020 World's Shortest Portmantout Word
c d m n 2018 xkcd 1970: Name Dominoes
Run Year Probability and Uncertainty
c d m n 2018 A Concrete Introduction to Probability
c d m n 2016 Probability, Paradox, and the Reasonable Person Principle
c d m n 2020 Estimating Probabilities with Simulations
c d m n 2019 The Devil and the Coin Flip Game
c d m n 2020 Dice Baseball
c d m n 2018 Economics Simulation
c d m n 2012 Poker Hand Ranking
c d m n 2020 The Unfinished Game .... of Risk
c d m n 2019 WWW: Who Will Win (NBA Title)?
Run Year The Riddler (from 538)
c d m n 2017 Battle Royale
c d m n 2021 CrossProduct
c d m n 2020 Flipping Cards; A Guessing Game
c d m n 2019 Lottery
c d m n 2019 How Many Soldiers to Beat the Night King?
c d m n 2017 Misanthropic Neighbors
c d m n 2018 Properly Ordered Card Hands
c d m n 2021 Split the States
c d m n 2020 Tour de 538
c d m n 2020 Weighing Twelve Balls
c d m n 2020 War. What is it Good For?
Run Year Computer Science Algorithms and Concepts
c d m n 2017 BASIC Interpreter
c d m n 2017 Convex Hull Problem
c d m n 2020 How to Count Things
c d m n 2020 Stable Matching Problem
c d m n 2017 Symbolic Algebra, Simplification, and Differentiation
c d m n 2017 Snobol: Bad Grade, Good Experience
c d m n 2018 Traveling Salesperson Problem

Index of Python Files

File Description Documentation
beal.py Search for counterexamples to Beal's Conjecture documentation
docex.py An obsolete 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.

Owner
Peter Norvig
Author, Programmer, Teacher, Research Director at Google
Peter Norvig
Results of Robot Framework 5.0 survey

Robot Framework 5.0 survey results We had a survey asking what features Robot Framework community members would like to see in the forthcoming Robot F

Pekka Klärck 2 Oct 16, 2021
Watcher for systemdrun user scopes

Systemctl Memory Watcher Animated watcher for systemdrun user scopes. Usage Launch some process in your GNU-Linux or compatible OS with systemd-run co

Antonio Vanegas 2 Jan 20, 2022
Python script for changing the SSH banner content with other content

Banner-changer-py Python script for changing the SSH banner content with other content. The Script will take the content of a specified file range and

2 Nov 23, 2021
Generates images with semantic content from distribution A in the style of distribution B

A2B Generates images with semantic content from distribution A in the style of d

Richard Herbert 2 Dec 27, 2021
Mannaggia is a python application to praise or more likely to curse the saints

Mannaggia-py 👼 Remember Mannaggia? This is a Python remake of it, with new features. mannaggia is a python application to praise or more likely to cu

Christian Visintin 9 Aug 12, 2022
Python library to natively send files to Trash (or Recycle bin) on all platforms.

Send2Trash -- Send files to trash on all platforms Send2Trash is a small package that sends files to the Trash (or Recycle Bin) natively and on all pl

Andrew Senetar 224 Jan 04, 2023
Python bilgilerimi eğlenceli bir şekilde hatırlamak ve daha da geliştirmek için The Big Book of Small Python Projects isimli bir kitap almıştım.

Python bilgilerimi eğlenceli bir şekilde hatırlamak ve daha da geliştirmek için The Big Book of Small Python Projects isimli bir kitap almıştım. Bu repo kitaptaki örnek programları çalıştığım oyun al

Burak Selim Senyurt 22 Oct 26, 2022
Ronin - Create Fud Meterpreter Payload To Hack Windows 11

Ronin - Create Fud Meterpreter Payload To Hack Windows 11

Dj4w3d H4mm4di 6 May 09, 2022
Collie is for uncovering RDMA NIC performance anomalies

Collie is for uncovering RDMA NIC performance anomalies. Overview Prerequ

Bytedance Inc. 34 Dec 11, 2022
The code submitted for the Analytics Vidhya Jobathon - February 2022

Introduction On February 11th, 2022, Analytics Vidhya conducted a 3-day hackathon in data science. The top candidates had the chance to be selected by

11 Nov 21, 2022
nbsafety adds a layer of protection to computational notebooks by solving the stale dependency problem when executing cells out-of-order

nbsafety adds a layer of protection to computational notebooks by solving the stale dependency problem when executing cells out-of-order

150 Jan 07, 2023
This tool don't used illegal ativity

ETHICALTOOL This tool for only educational purposes don't used illegal ativity @onlinehacking this tool for pkg update && pkg upgrade && pkg install g

Mrkarthick 4 Dec 23, 2021
Check a discord message and give it a percentage of scamminess

scamChecker Check a discord message and give it a percentage of scamminess Run the bot, and run the command !scamCheck and it will return a percentage

3 Sep 22, 2022
A tool that bootstraps your dotfiles ⚡️

Dotbot Dotbot makes installing your dotfiles as easy as git clone $url && cd dotfiles && ./install, even on a freshly installed system! Rationale Gett

Anish Athalye 5.9k Jan 07, 2023
Py-Parser est un parser de code python en python encore en plien dévlopement.

PY - PARSER Py-Parser est un parser de code python en python encore en plien dévlopement. Une fois achevé, il servira a de nombreux projets comme glad

pf4 3 Feb 21, 2022
An advanced pencil sketch generator

Pencilate An advanced pencil sketch generator About : An advanced pencil sketch maker made in just 12 lines of code. Yes you read it right, JUST 12 LI

MAINAK CHAUDHURI 23 Dec 17, 2022
SECRET SANTA / KRIS KINGLE

SECRET SANTA / KRIS KINGLE Note: Before executing the script, make sure to turn

DEV_FINWIZ 10 Dec 06, 2022
Web app for keeping track of buildings in danger of collapsing in the event of an earthquake

Bulina Roșie 🇷🇴 Un cutremur în București nu este o situație ipotetică. Este o certitudine că acest lucru se va întâmpla. În acest context, la mai bi

Code for Romania 27 Nov 29, 2022
A funny alarm clock I made in python

Wacky-Alarm-Clock Basically, I kept forgetting to take my medications, so I thought it would be a fun project to code my own alarm clock and make it r

1 Nov 18, 2021
Pipenv-local-deps-repro - Reproduction of a local transitive dependency on pipenv

Reproduction of the pipenv bug with transitive local dependencies. Clone this re

Lucas Duailibe 2 Jan 11, 2022