Download presentation
Presentation is loading. Please wait.
Published byKaren Johnson Modified over 9 years ago
1
8 January 2016Birkbeck College, U. London1 Introduction to Programming Lecturer: Steve Maybank Department of Computer Science and Information Systems sjmaybank@dcs.bbk.ac.uk Spring 2016 Week 1: First Program
2
Module Information Time: 18.00-21.00 on Fridays in the spring term. A-K: lectures 18.00 to 19.20 lab sessions 19.40 to 21.00 L-Z: lab sessions 18.00 to 19.20 lectures 19.40 to 21.00 Week 9: mock in lab test Weeks 10 and 11: real in lab test and mock exam 8 January 2016Birkbeck College, U. London2
3
Assessment Lab attendance (8 classes): 10% In Lab test: 20% Two hour examination in summer 2016: 70% Pass: an average mark of at least 40% The mock examination and a mock in lab test do not contribute to the assessment 8 January 2016Birkbeck College, U. London3
4
Textbook Essential: Cay Horstmann and Rance Necaise (2014) Python for Everyone, Wiley This module uses the first six chapters of PFE The lab classes are based on exercises in PFE 8 January 2016Birkbeck College, U. London4
5
Syllabus First program Safe operation of computing equipment Pseudo code and algorithm design Arithmetic Strings Relational operators and Boolean variables if statement Loops Functions Lists Programming exercises 8 January 2016Birkbeck College, U. London5
6
This Lecture Based on Ch. 1 of PFE Aim 1: provide background information on computing Aim 2: provide enough information to write a first Python program. 8 January 2016Birkbeck College, U. London6
7
Structure of a Computer Central Processing Unit: executes instructions. Primary storage (= main memory): volatile storage of programs and data ready for the CPU Bus: connects the CPU and the primary storage 8 January 2016Birkbeck College, U. London7 CPU primary storage
8
Peripheral Devices Input devices: mouse, keyboard, microphone Output devices: printer, monitor, speakers Input and Output device: hard drive (non- volatile secondary storage of programs and data) 8 January 2016Birkbeck College, U. London8
9
Problem The CPU of a computer can only carry out simple instructions known as machine code It is time consuming and error prone to write programs using machine code 8 January 2016Birkbeck College, U. London9
10
Solution Write programs in a high level language which is easier to understand than machine code. Use another program to convert high level programs into lists of machine code instructions for the CPU. 8 January 2016Birkbeck College, U. London10
11
Python Developed in the late 80s and early 90s by Guido van Rossum (National Research Institute for Mathematics and Computer Science, The Netherlands) Aim: to produce a language in which small programs can be written quickly The name: from Monty Python’s Flying Circus Python 0.9.0: year 1991 Python 2.0: year 2000 Python 3.0: year 2008 8 January 2016Birkbeck College, U. London11
12
Advantages of Python Simple syntax (= grammar) Portable without change to Windows, UNIX, Linux and Macintosh operating systems Easy to write programs for complex data Very large standard library 8 January 2016Birkbeck College, U. London12
13
Zen of Python – first 7 items Beautiful is better than ugly Explicit is better than implicit Simple is better than complex Complex is better than complicated Flat is better than nested Sparse is better than dense Readability counts 8 January 2016Birkbeck College, U. London13 https://www.python.org/dev/peps/pep-0020/
14
Python Interpreter The interpreter consists of a compiler and a virtual machine The compiler converts Python instructions to simpler instructions known as byte code The virtual machine is a software version of a CPU. It runs the byte code 8 January 2016Birkbeck College, U. London14
15
Portability The virtual machine is not portable Once the virtual machine is installed, it can run the byte code from any Python program 8 January 2016Birkbeck College, U. London15
16
Integrated Development Environment Our IDE for Python is IDLE IDLE facilities: Create file for program Edit program file Run program See practical session 8 January 2016Birkbeck College, U. London16
17
IDLE Editor and Shell 8 January 2016Birkbeck College, U. London17 Left hand: editor, contains program Right hand: shell, receives output when the program is run
18
My First Program # My first program print("Hello World!") 8 January 2016Birkbeck College, U. London18 When the above program is run in IDLE the string "Hello World!" appears in the shell screen
19
Commentary # My first program is a comment. It is ignored by the interpreter print("Hello World!") is a statement print is the name of a function print("Hello World!") is a function call The string "Hello World!" is an argument for the function print() 8 January 2016Birkbeck College, U. London19
20
Colour Coding in IDLE Red for comments: # My first program Purple for functions: print(…) Green for data: "Hello World!" Blue for output: "Hello World!" 8 January 2016Birkbeck College, U. London20
21
More About Functions A function is a collection of programming instructions that carry out a particular task Example: print("Hello World!") We know the name of the function, the data supplied to the function and the data obtained from the function We do not need to know the programming instructions within the function 8 January 2016Birkbeck College, U. London21
22
Calls to print print("The answer is", 6+7, "!") # three arguments # The output is The answer is 13 ! print("Hello") # one argument print() # no arguments. A blank line is printed print("World") # one argument # The output is Hello World 8 January 2016Birkbeck College, U. London22
23
Errors Python is case sensitive: Print("Hello World!") # error if print is intended PRINT("Hello World!") # error if print is intended Syntax errors: print(Hello World!) print("Hello World!) 8 January 2016Birkbeck College, U. London23
24
Indentation # Statements must begin in the same column # The following statements are in error print("Hello") print("World") 8 January 2016Birkbeck College, U. London24
25
Compile Time Error An error in the syntax (grammar of Python) is detected by the compiler, e.g. print(Hello World!) An error message is produced, in this case SyntaxError: invalid syntax The error must be corrected `by hand` 8 January 2016Birkbeck College, U. London25
26
Run Time Errors Exception: the syntax is correct but the program stops when the error is encountered, e.g. print(1/0) An exception produces an error message, in this case ZeroDivisionError: int division or modulo by zero Run time error (but not an exception): the program runs but does not produce the desired result, e.g. print("Helo World!") 8 January 2016Birkbeck College, U. London26
27
Questions What does this program print? print("39+3") print(39+3) What does this program print? print("Hello", "World", "!") What is the compile time error in this program? print("Hello", "World!) 8 January 2016Birkbeck College, U. London27
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.