Index
The aim of this page is to list the tutorials covered to date, and the concepts covered in them. If you’re interested in a concept search for it here then click the link to the relevant page.
[August 2014: Work in progress – to be completed!]
Comprehending Lists and Tuples – list comprehensions, purpose behind tuples
Modelling Chess Positions – list of lists, intro to MVC, model, view, ascii chess board
Slider Spliner – Scale widget, wm_title, orient keys, widget.get() method
A Short Aside – Some Python Minecraft Stuff – some third party Minecraft server aids
Canvassing – Tkinter Canvas, width, height, bg keys, intro to cartesian coordinates
Being Exceptional – EAFP, LBYL, TypeError, try/except, errorless excepts, isinstance, polymorphism
Weird Binding Stuff – Tkinter oobject id(), copy, copy.copy(), copy.deepcopy()
Minecraft config editor – Part, the Ultimate backing up and writing config file
Minecraft Config: Subclassing and Inheritance, Editing all config items: subclassing, super()
Minecraft Config Editor: Tkinter Text Widget and Frames
MineCraft config editor part 2 – documentation as a development aid, more on debugging
Starting our Config Editor – config files, parsing
Recap part 2 – Tkinter recap on GUIs, windows, geometry, window decorations, events, event handlers
Interlude – Comments on Learning and Debugging
Classy Methods, a Sense of Self (Classes Part 2) methods, overriding, __init__, self
Side Track – Global and Local Variables
Using Images in the GUI – PhotoImage, ‘image’ key
Tkinter tinkering (Graphical User Interfaces) import *, introduction to Tkinter, Label, pack()
Catching Our Breath – overview of recent progress
Keeping Code – using a text editor to save your Python code
Dictionaries, Hovercraft, Eels – Python dictionaries, keys, items, values {}
A Big Jar of Pickles – example of using pickle to store the questions for a trivia game
An Awful Pickle – storing objects in a file pickle/cPickle
Omigosh: Happy New Year – overview of progress
Foundations: The Ministry of Silly Objects – more on objects, methods, attributes
Trivia Game part 2 – random.randint()
Trivial Lists – Lists, referencing members of the list with listName[index]
CryptoPyThy – consolidation, ord() and chr() functions
Strings – escape characters, \t and \n, .split() method, .join() method, slicing with [:]
Random Imports- import statement, random() module, random.random(), del to delete imported modules
Functions (or The Right Place for an Argument) arguments, default values for arguments)
Some Foundations: Variables and stuff
While, control-C to stop execution
More on range, modulo/remainder arithmetic (ie 5%4 = 1)
Pingback: Recap on Progress « Python Tutorials for Kids 8+
Many years ago I was in charge of the training of raw adult recruits to the new computer technology (circa 1963). The first groups were trained in assembler. Later groups were trained in COBOL (a natural language compiler) the first group attempted to retrain into COBOL, but were never as adept as the group trained firstly in COBOL.
I would make two points on this experience.
1. the first language which one learns is the one in which most ability is shown
2. the computer language should attempt to fit the native language as much as is possible
This poses the serious questions as to the suitability of the current languages Ruby, and Python as base languages on which later languages will be learned, and do they in any way fit the second requirement.
I might add that I found the use of flow charts to display the logic of the program prior to coding was most useful, and then the transition to decision tables to define the logic more rigorously, and detect redundancy. I do not perceive this approach in teaching of Ruby and Python.
Philip Stanley
Thanks Philip