Python II

Mary PW Chin 钱碧慧博士
PhD (Wales), MSc (Surrey)
E-mail:

1st bite of Python

Getting started

2nd bite of Python

Dice

3rd bite of Python

Circles

4th bite of Python

Statistics & histograms

5th bite of Python

More loops

6th bite of Python

Pretty nets

7th bite of Python

Jumping man

8th bite of Python

Medical scans

9th bite of Python

Handwriting recognition

10th bite of Python

Flower recognition

SECOND BYTE OF PYTHON
a slideshow

Slides here are continuously being revised and updated. If you have been here before, your browser might have some old files cached. To ensure that you see the latest version, please follow the instructions given in the following link: ☞ how to clear browser cache.

Synopsis
  1. The import keyword;
  2. Module random and its method randint;
  3. Conditionals: if-elif-else;
  4. Assignment vs comparison;
  5. Booleans and vs or;
  6. Variable names: rules and conventions;
  7. Output to screen (standard output) vs output to file;
  8. Linux commands: ls, wc, head, tail;
  9. Some probability theory;
  10. Initialisation and counters;
  11. dir;
  12. Inclusive vs exclusive ranges.
Exercise
  1. For the program on slide #19 mark out the:
    • variable names;
    • arguments;
    • functions;
    • keywords;
    • modules;
    • methods;
  2. Repeat Exercise 1 for the program on slide #23.
  3. Repeat Exercise 1 for the program on slide #35.
  4. Refer to the program on slide #35. What difference would you expect if we change
    range(0, so_many_times) to
    • range(-100, so_many_times-100);
    • range(so_many_times+1000, 1000, -1);
    • range(0, so_many_times*1000, 1000)?
  5. Refer the program on slide #38. What happens if we change elif to if? Draw the revised flowchart.
  6. Write a program to generate two random numbers between 0 and 100. Print the larger number, and the sum, difference and product of the two numbers.
  7. Write a program to generate a random number between 0 and 10. Take the number as the radius of a circle. Print the diameter, circumference and area of this circle. You can get the value for π by first importing that math module; the value for π is then accessible as math.pi.
  8. Write a program to generate a random number 1930 ≤ y ≤ 2017, take this as somebody's year of birth. Generate another random number 1 ≤ m ≤ 12, let this be his month of birth. We need to know his age in the coming years until he reaches 90. Print your output in three columns:
    YEARMONTHAGE
    20181__ years __ months
    20182
    20183
    ____90 years 0 month

  9. Write a program simulating the draw of Magnum 4D first prize.
  10. Write a program simulating your favourite chance-based game.
What we have learned so far
  1. Python keywords:
    • for
    • in
    • import
    • as
    • if
    • elif
    • else
    • and
    • or
  2. Python built-in functions:
    • print(…, end='…')
    • range(…, …, …)
    • help(…)
    • dir(…)
  3. Python modules and methods:
    • random.randint(…, …)
  4. Linux commands (and options):
    • ls -l
    • wc -l
    • head
    • tail

1st bite of Python

Getting started

2nd bite of Python

Dice

3rd bite of Python

Circles

4th bite of Python

Statistics & histograms

5th bite of Python

More loops

6th bite of Python

Pretty nets

7th bite of Python

Jumping man

8th bite of Python

Medical scans

9th bite of Python

Handwriting recognition

10th bite of Python

Flower recognition