Download Slides1

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

String literal wikipedia , lookup

Video game programmer wikipedia , lookup

Indentation style wikipedia , lookup

Compiler wikipedia , lookup

Comment (computer programming) wikipedia , lookup

Assembly language wikipedia , lookup

Logic programming wikipedia , lookup

Abstraction (computer science) wikipedia , lookup

History of compiler construction wikipedia , lookup

Interpreter (computing) wikipedia , lookup

Falcon (programming language) wikipedia , lookup

Go (programming language) wikipedia , lookup

Functional programming wikipedia , lookup

Programming language wikipedia , lookup

Control flow wikipedia , lookup

Reactive programming wikipedia , lookup

C Sharp (programming language) wikipedia , lookup

Python syntax and semantics wikipedia , lookup

Object-oriented programming wikipedia , lookup

Structured programming wikipedia , lookup

Python (programming language) wikipedia , lookup

Transcript
Guide to Programming with
Python
Chapter One
Getting Started: The Game Over Program
Fm: http://xkcd.com/353/
2
Objectives
 Introduce Python
– History
– High-level language (computer program &
algorithms)
– Interpreted language
 Get started with Python
– Python installation
– Statements (e.g., print text to the screen)
– Comments & application
 Demonstrate Python’s development environment,
IDLE: iterative / script modes
Guide to Programming with Python
3
Hello World / Game Starts
 “Hello World” program: By tradition, prints "Hello,
world!”
– Often used as first program
– print “Hello world”
 Console window: Provides a text-based interface
to Windows operating system
 Terminal application: Provides a text-based
interface to Mac OS X and Linux operating systems
Guide to Programming with Python
4
Introducing Python
 Powerful yet easy to use programming language
(platform independent)
 Developed by Guido van Rossum
 First released in 1991
 Named after comedy troupe Monty Python
 Getting more popular
– Python is free and open source
– Has strong community
(image: stock.xchg, No.655639)
 High-level programming Language
 Interpreted language
 Object oriented
Guide to Programming with Python
5
Algorithms & Computer programs
 An algorithm is a set of well-defined instructions for
accomplishing a task (e.g., S’mores algorithm for
making s'mores)
 When we write computer program, we are
generally implementing a method (an algorithm)
devised previously to solve some problem.
 A computer program is a sequence of instructions
that are executed by a CPU
 Computer programs can be written in high-level
(e.g., Python, Perl, C, C++, Java), or primitive
programming languages
Guide to Programming with Python
6
High-level Programming Language
 High-level programming languages separate from
the low-level processor operations; closer to
human language than machine language (machine
code or machine language, a system of instructions
and data executed directly by a computer's central
processing unit, CPU.)
 This greater abstraction and hiding of details is
generally intended to make the language userfriendly ("Programming at the speed of thought”),
but maybe less efficient (but it is not a big problem
in many cases with powerful personal computers)
Guide to Programming with Python
7
Python Is a “Glue” Language
 Can be integrated with other languages
– C/C++
– Java
 Use existing code
 Leverage strengths of other languages
– Extra speed that C or C++ offers
Guide to Programming with Python
8
Python is Interpreted Language
 A python program is just a text file; How can a
computer know what to do? Different models of
execution for modern high-level languages
 Interpreted
– Interpreted languages are read and then executed
directly, with no compilation stage.
– Examples: Python, Perl, Ruby, Java
 Compiled
– Compiled languages are transformed into an
executable form before running.
– Examples: C (and C++)
 Comparison of “Hello World” in Python, Perl, and
Cto Programming with Python
Guide
9
Setting up Python
 Windows
 Linux
– Python probably already installed
– Test: try running python at command prompt
 Mac OS 10.5.x and up
– Lion (10.7) Python 2.7.2 installed; IDLE 2.7.2
(http://www.python.org/idle/), Tk version 8.5
– Leopard (10.5.x) already has Python 2.5.1 installed, but you need
to install IDLE.app following instructions at
http://wiki.python.org/moin/MacPython/Leopard
 If not installed, go to http://www.python.org/download/
 Remember: your computer needs a python “interpreter”
to understand python codes
Guide to Programming with Python
10
Introducing IDLE
 Integrated Development Environment (IDE):
Application that helps software developers write
programs
– Like a word processor for your code
 IDE that ships with Python
 Has two “modes”: Interactive and Script (see
demo)
 But using which editing program (IDLE, or
whatever) is really personal taste.
Guide to Programming with Python
11
Interactive and Script Mode
 Iterative mode: You tell Python what to do, and it
will do it immediately
 Script mode: You write, edit, load, and save python
programs (just like you write a document in Word
processor, and any other types of text processors).
But definitely you do not want to write your Python
codes with Word!
Guide to Programming with Python
12
Programming in Interactive Mode
 Great for immediate feedback
– Test a simple idea
– Remember how something works
 Open Python in interactive mode
– In Windows, from the Start menu, choose Programs, Python
<version>, IDLE (Python GUI)
 On STC Lab machines
– Windows: Will be in Start menu > All Programs >
Departmentally Sponsored > Informatics
– Mac: Type python in /Applications/Utilities/Terminal.app or run
IDLE.app from the Developer Tools folder in the Dock
 Command prompt >>>
Guide to Programming with Python
13
Jargon
 Statement: Single unit in programming language
that performs some action
– print "Game Over”
Statement can display a string (actually, any
expression)
 String: Sequence of characters
 Expression: Something which has a value or that
can be evaluated to a single value
 print
– "Game Over"
– 7 + 2
 Code: Sequence of programming statements
Guide to Programming with Python
14
Jargon
 Syntax highlighting: Displaying programming
code in different colors or fonts, according to the
category of each item
 Errors
– Computers take everything literally
– primt "Game Over" produces an Error Message:
SyntaxError: invalid syntax
– Syntax error: Error in the rules of usage; often a
typo (versus logic error)
– Bug: Error in programming code
Guide to Programming with Python
15
Programming in Script Mode
 Great for programs you want to run later
– Write, edit, save, and load programs
– Like word processor for your programs
• Find and replace
• Cut and paste
 Open a script window
– In interactive window, select File menu, New
Window
Guide to Programming with Python
16
The Game Over Program
 Comment: Note in source code meant only for
programmers; ignored by computer
– Start comment with #
– Use opening block of comments
 Blank Lines
– Also (generally) ignored by computer
– Use for readability; keep related code together
 Console Window
– Final line keeps console window open
Guide to Programming with Python
17
Python Is Object-Oriented
 Object-oriented programming (OOP):
Methodology that defines problems in terms of
objects that send messages to each other
– dir(1)
– In a game, a Missile object could send a Ship object
a message to Explode
 OOP not required, unlike Java and C#
Guide to Programming with Python
18
Summary
 Python is a high-level, object-oriented
programming language that’s powerful yet easy to
use
 Python can interface with other programming
languages
 IDLE is Python’s standard IDE
 IDLE has an interactive mode that offers immediate
response to Python code
 IDLE has a script mode that allows programmers to
write, edit, load, save, and run their programs
Guide to Programming with Python
19
Summary (continued)
 A string is a sequence of characters
 A statement is a single unit of programming that
performs some action
 The print statement displays strings on the screen
 An expression is something which has a value or
that can be evaluated to a single value
 Syntax highlighting is displaying programming code
in different colors or fonts, according to the
category of each item
Guide to Programming with Python
20
Summary (continued)
 A syntax error is a violation of the grammar of a
programming language; often caused by a typo (we
will see logic error)
 A bug is an error in programming code
 A comment is a note in source code meant only for
programmers; ignored by computer
 Comments start with #
 You should use an opening block of comments in
your programs to identify the programmer, the
creation date, and the program’s purpose
Guide to Programming with Python
21