Planning a Python Course for Beginners

alister alister.ware at ntlworld.com
Wed Aug 9 06:40:57 EDT 2017


On Tue, 08 Aug 2017 14:19:53 +0000, Stefan Ram wrote:

> I am planning a Python course.
> 
>   I started by writing the course akin to courses I gave in other
>   languages, that means, the course starts roughly with these topics:
> 
> - number and string literals - types of number and string literals
>   (just giving the names »int«, »float«, and »string«)
> - using simple predefined operators (+, -, *, /)
>   (including 2*"a" and "a"+"b")
> - calling simple predefined functions (len, type, ...)
> 
>   . This is a little bit boring however and might not show off Python's
>   strength early in the course.
> 
>   So, I now think that maybe I should start to also include list (like
> 
> [1,2,3]
> 
>   ) right from the start. A list conceptually is not much more difficult
>   than a string since a string "abc" resembles a list ["a","b","c"].
>   I.e., the course then would start as follows:
> 
> - number, string, and list literals - types of number, string and list
> literals
>   (just giving the names »int«, »float«, »string«, and »list«)
> - using simple predefined operators (+, -, *, /)
>   (including 2*"a", "a"+"b",  2*["a"], and [1]+[2])
> - calling simple predefined functions (len, type, ...)
> 
>   However, once the box has been opened, what else to let out? What
>   about tuples (like
> 
> (1,2,3)
> 
>   ). Should I also teach tuples right from the start?
> 
>   But then how to explain to beginners why two different types (lists
>   AND tuples) are needed for the concept of a linear arrangement of
>   things?
> 
>   Are there any other very simple things that I have missed and that
>   should be covered very early in a Python course?
> 
>   (Especially things that can show off fantastic Python features that
>   are missing from other programming languages, but still only using
>   literals, operators and function calls.)


if these are beginners with no basic programming knowledge then
try not to confuse them with anything unduly complicated, I would even go 
so far as to start with psuedo code on a pen & paper processor & only 
introduce the concepts of different data types only when they have 
progressed to the point that they need to know.



-- 
Round Numbers are always false.
		-- Samuel Johnson



More information about the Python-list mailing list