Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introducing Python CS 4320, SPRING 2015. Resources We will be following the Python tutorialPython tutorial These notes will cover the following sections.

Similar presentations


Presentation on theme: "Introducing Python CS 4320, SPRING 2015. Resources We will be following the Python tutorialPython tutorial These notes will cover the following sections."— Presentation transcript:

1 Introducing Python CS 4320, SPRING 2015

2 Resources We will be following the Python tutorialPython tutorial These notes will cover the following sections and subsections: ◦Section 1: Whetting your Appetite ◦Section 3: An Informal Introduction to Python ◦Subsections 4.1-4.3, 4.5 and 4.6: More Control Flow ◦Subsubsections 4.7.1-4.7.3: More on defining functions ◦Subsubsections 5.1.1-5.1.2: More on Lists ◦Subsection 5.3: Tuples ◦Section 6, 6.1, 6.1.1, 6.4: Modules You are encouraged to read more than the minimum and, of course, to try out the examples presented in the tutorial 1/7/2015 2 CS 4320, SPRING 2015

3 Sources of Information The most important source about Python is the documentation for the Python Standard LibraryPython Standard Library ◦As the Python site says: ‘keep this under your pillow’ The Python documentation page points to other good sourcesPython documentation page 1/7/2015CS 4320, SPRING 2015 3

4 History Developed by Guido van Rossum in the late 1980’s Now developed to version 3.x Python is multi-paradigm: imperative and OO and some functional 1/7/2015CS 4320, SPRING 2015 4

5 Lexical Structure Two aspects of Python syntax may be challenging to Java programmers Indenting ◦Indenting is syntactically important ◦Blocks of code, as inside an ‘if’, are indicated by indenting ◦Code that is sequential must not be indented Statement continuation ◦Statements normally finish at the end of a line ◦A statement will continue to further lines if there are parentheses or braces still not matched ◦A single backslash, \, at the end of a line will also continue the statement ◦Note: no characters, including spaces, are allowed after \ in this case Summary: In Python, white-space is important 1/7/2015CS 4320, SPRING 2015 5

6 Global Level Python allows definitions and code at the global level That is, not everything has to be inside a class definition The famous ‘hello world’ program can be one line: ◦ print(‘hello world!’) This also means that variables can have a global scope: seen by every part of the code. Be careful, global variables can make very difficult code Many important pre-defined functions are free (Built-in Functions Reference)Built-in Functions Reference 1/7/2015CS 4320, SPRING 2015 6

7 First Program Creating a project Creating a file Running from the IDE Running a script from the command line ◦The interpreter definition line #! ◦Change the mode of the file to executable Running the Python interpreter interactively 1/7/2015CS 4320, SPRING 2015 7

8 Printing The print function is used to print data to standard output Arguments must be enclosed in parentheses (a major difference from Python 2) Arguments are separated by a space when printed ◦So, print(“x is”, x) will leave a space between the label and the value The print function inserts a new line after printing the arguments ◦You can change this by using the keyword argument end=… 1/7/2015CS 4320, SPRING 2015 8

9 Basic Data Types Numeric Strings Lists Tuples Dictionaries 1/7/2015CS 4320, SPRING 2015 9

10 Numeric Data Float and Integer are subsumed under a single type Integer arithmetic is arbitrary precision When doing division ◦/ gives a float result ◦// gives an integer result 1/7/2015CS 4320, SPRING 2015 10

11 Strings Strings are, as in Java, immutable sequences of characters ◦The global len function will return the length of a string String literals can be delimited by single or double quotes, these must be on one line Strings can be delimited by ‘triple quotes’ (either ‘’’ or “””) ◦This form can be multi-line 1/7/2015CS 4320, SPRING 2015 11

12 Lists Lists are ordered, indexed sequences of values Lists are not typed, so pretty much any values can be mixed into a list Square brackets are used to delimit a literal list in code Indexing ◦Indexes start at 0 ◦Negative indexes count from the end of the list, so s[-1] is the last element in list s ◦s[i] is the item at index I ◦s[k:j] is the sublist of items from k to j (not including j) ◦s[k:] is the sublist from k to the end ◦s[i:j:k] is the sublist from I to j in steps of k 1/7/2015CS 4320, SPRING 2015 12

13 List Functions len(s) is the length of list s s + t is the concatenation of lists s and t s.append(x) adds x to the end of list s s.pop(i) removes and returns the element at index I ◦s.pop() is the same as s.pop(-1) 1/7/2015CS 4320, SPRING 2015 13

14 Tuples Tuples are immutable lists As literals, tuples are given by a comma separated list of values surrounded by parentheses ◦(1,2,3) Beware! ◦(1) is not a tuple, it is simply the integer 1 ◦(1,) is a tuple with one element, the integer 1 Tuples turn up in some places, especially as the return values from some functions. ◦Just be aware that tuples cannot be modified 1/7/2015CS 4320, SPRING 2015 14

15 Dictionaries Also known as ‘hash maps’, ‘associative memory’, and ‘maps’ A dictionary associates keys to values A literal dictionary uses curly braces with pairs ‘key:value’ 1/7/2015CS 4320, SPRING 2015 15

16 Selection The semantics of the if statement are familiar, however the syntax is different from Java The body of each part of the ‘if’ must be indented. Four spaces is pretty standard. ◦The indentation must be consistent throughout the body 1/7/2015CS 4320, SPRING 2015 16 If x < 3: print(‘small’) elif x < 5: print(‘medium’) else: print(‘large’)

17 Iteration The ‘for’ loop is good for stepping through lists The code below will print each element in the list s 1/7/2015CS 4320, SPRING 2015 17 for x in s: print(x)

18 Ranges For stepping through ranges of integers, the range function is available range(10) is the numbers from 0 to 9, inclusive range(5,10) is the numbers from 5 to 9, inclusive range(5,10,2) is the numbers 5, 7 and 9 1/7/2015CS 4320, SPRING 2015 18


Download ppt "Introducing Python CS 4320, SPRING 2015. Resources We will be following the Python tutorialPython tutorial These notes will cover the following sections."

Similar presentations


Ads by Google