Python - 2. Jim Eng

Size: px
Start display at page:

Download "Python - 2. Jim Eng"

Transcription

1 Python - 2 Jim Eng jimeng@umich.edu

2 Lists Dictionaries Try... except Methods and Functions Classes and Objects Midterm Review Overview

3 Patterns in programming - 1 Sequential steps Conditional steps Repeated steps Stored and reused steps

4 Patterns in programming - 2 Input Processing Output

5 pals = list() pals.append("glenn") pals.append("sally") pals.append("joe") print pals ['Glenn', 'Sally', 'Joe'] print pals[1] Sally

6 print pals ['Glenn', 'Sally', 'Joe'] pals[2] = 'Joseph' print pals ['Glenn', 'Sally', 'Joseph']

7 num = 1 for pal in pals:... print num, ") ", pal... num = num ) Glenn 2 ) Sally 3 ) Joseph print num 4

8 pals.sort() num = 1 for pal in pals:... print num, ") ", pal... num = num ) Glenn 2 ) Joseph 3 ) Sally

9 def print_list(list):... num = 1... for item in list:... print num, ") ", item... num = num print_list(pals) 1 ) Glenn 2 ) Joseph 3 ) Sally

10 pals.append('erin') pals.append('michele') pals.insert(3,'aaron') print_list(pals) 1 ) Glenn 2 ) Joseph 3 ) Sally 4 ) Aaron 5 ) Erin 6 ) Michele

11 nums = list() nums.append(12345) nums.append(15000) nums.append(13000) nums.append(12000) print_list(nums) 1 ) ) ) ) 12000

12 nums.append(12) print nums [12345, 15000, 13000, 12000, 12] nums.sort() print_list(nums) 1 ) 12 2 ) ) ) ) 15000

13 def foot_label(num):... label = "feet"... if(num == 1):... label = "foot"... return label... def inch_label(num):... label = "inches"... if(num == 1):... label = "inch"... return label...

14 def print_feet(inches_in):... feet = inches_in / inches = inches_in % msg = str(inches_in)... msg = msg + " inches equals " + str(feet)... msg = msg + " " + foot_label(feet)... if(inches > 0):... msg = msg + " and " + str(inches)... msg = msg + " " + inch_label(inches)... print msg...

15 print_feet(12000) inches equals 1000 feet print_feet(nums[1]) inches equals 1000 feet for num in nums:... print_feet(num) inches equals 1 foot inches equals 1000 feet inches equals 1028 feet and 9 inches inches equals 1083 feet and 4 inches inches equals 1250 feet

16 list2 = list() list2.append("jennifer") list2.append("jack") list2 ['Jennifer', 'Jack'] print list2 ['Jennifer', 'Jack'] print pals ['Glenn', 'Joseph', 'Sally', 'Aaron', 'Erin', 'Michele'] new_list = pals + list2 print new_list ['Glenn', 'Joseph', 'Sally', 'Aaron', 'Erin', 'Michele', 'Jennifer', 'Jack']

17 Lists are OK We can use them to keep things in order We can sort them -- pals.sort() We can add things to lists -- pals.append('joe'), pals.insert(3,'aaron') We can directly access individual items -- pals[2] We can iterate through the items -- for pal in pals: We can concatenate lists -- list3 = list1 + list2

18 pal = dict() pal['first'] = 'Gonzalo' pal['last'] = 'Silverio' pal[' '] = 'gsilver@example.org' pal['phone'] = ' ' print pal {'phone': ' ', 'last': 'Silverio', ' ': 'gsilver@example.org', 'first': 'Gonzalo'}

19 print pal['phone'] print pal['age'] Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'age'

20 print pal.get('age', 'Age not available') Age not available print pal.get('phone', 'Phone not available') print pal.get('age', 21) 21

21 for key in pal :... print key... phone last first

22 for key in pal :... print key, ": ", pal[key]... phone : last : Silverio gsilver@example.org first : Gonzalo

23 dir(pal) [' class ', ' cmp ', ' contains ', ' delattr ', ' delitem ', ' doc ', ' eq ', ' ge ', ' getattribute ', ' getitem ', ' gt ', ' hash ', ' init ', ' iter ', ' le ', ' len ', ' lt ', ' ne ', ' new ', ' reduce ', ' reduce_ex ', ' repr ', ' setattr ', ' setitem ', ' str ', 'clear', 'copy', 'fromkeys', 'get', 'has_key', 'items', 'iteritems', 'iterkeys', 'itervalues', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']

24 dir('hello') [..., 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill'] print 'Hello'.upper() HELLO print 'Hello'.swapcase() hello print 'lord of the rings'.title() Lord Of The Rings

25 dir(pal) [..., 'clear', 'copy', 'fromkeys', 'get', 'has_key', 'items', 'iteritems', 'iterkeys', 'itervalues', 'keys', 'pop', 'popitem', 'setdefault', 'update', 'values']

26 pal.keys() ['phone', 'last', ' ', 'first'] pal.values() [' ', 'Silverio', 'Gonzalo'] pal.has_key('phone') True pal.has_key('age') False pal.items() [('phone', ' '), ('last', 'Silverio'), (' ', ('first', 'Gonzalo')]

27 pals = list() pal = dict() pal['first'] = 'Gonzalo' pal['last'] = 'Silverio' pal[' '] = 'gsilver@example.org' pal['phone'] = ' ' print pal {'phone': ' ', 'last': 'Silverio', ' ': 'gsilver@example.org', 'first': 'Gonzalo'} pals.append(pal)

28 pal = dict() print pal {} pal['first'] = 'Jim' pal['last'] = 'Eng' pal[' '] = 'jimeng@umich.edu' pal['phone'] = ' ' pals.append(pal) print pals [{'phone': ' ', 'last': 'Silverio', ' ': 'gsilver@example.org', 'first': 'Gonzalo'}, {'phone': ' ', 'last': 'Eng', ' ': 'jimeng@umich.edu', 'first': 'Jim'}]

29 for pal in pals:... for key in pal:... print key, ": ", pal[key]... print " ---- "... phone : last : Silverio gsilver@example.org first : Gonzalo ---- phone : last : Eng jimeng@umich.edu first : Jim ----

30 for pal in pals:... for key in keys:... print key, ": ", pal[key]... print " ---- "... first : Gonzalo last : Silverio phone : gsilver@example.org age : Traceback (most recent call last): File "<stdin>", line 3, in <module> KeyError: 'age'

31 for pal in pals:... for key in keys:... print key, ": ", pal[key]... print " ---- "... first : Gonzalo last : Silverio phone : gsilver@example.org age : Traceback (most recent call last): File "<stdin>", line 3, in <module> KeyError: 'age'

32 nk = " not known" for pal in pals:... for key in keys:... print key, ": ", pal.get(key, key + nk)... print " ---- "... first : Gonzalo last : Silverio phone : gsilver@example.org age : age not known birthday : birthday not known ---- first : Jim last : Eng phone : jimeng@umich.edu

33 person = dict() for key in keys:... val = raw_input(key + ": ")... person[key] = val... first: Denzel last: Washington phone: denzel@celeb.org age: 54 birthday: Dec 28 print person {'last': 'Washington', 'age': '54', 'phone': " ", 'birthday': 'Dec 28', ' ': 'denzel@celeb.org', 'first': 'Denzel'}

34 pals.append(person) pals [{'phone': ' ', 'last': 'Silverio', ' ': 'first': 'Gonzalo'}, {'phone': ' ', 'last': 'Eng', ' ': 'first': 'Jim'}, {'last': 'Washington', 'age': '54', 'phone': " ", 'birthday': 'Dec 28', ' ': 'first': 'Denzel'}]

35 Dictionaries are OK We can use a dictionary to associate keys and values We can describe an individual by its attributes We can iterate over the keys and access the values And so much more...

36 fahrenheit = input("enter F: ") celsius = convert(fahrenheit) print "C: ", celsius % python conv1.py Enter F: Fred Traceback (most recent call last): File "conv1.py", line 1, in <module> ftemp = input("enter F:"); File "<string>", line 1, in <module> NameError: name 'Fred' is not defined

37 print int('42') 42 print int(42.5) 42 print int('forty-two') Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: invalid literal for int() with base 10: 'forty-two'

38 try:... print int('42')... except:... print 'oops' try:... print int('forty-two')... except:... print 'oops'... oops

39 def safeint(val):... try:... print int(val)... except:... print 'oops'... safeint(42) 42 safeint(42.5) 42 safeint('42') 42 safeint('forty-two') oops

40 f = input("enter the temperature in farenheit: ") c = convert(f) print "The temperature in celsius is ", c $ python conv1.py Enter the temperature in farenheit: Fred Traceback (most recent call last): File "f2c.py", line 6, in <module> f = input("enter the temperature in farenheit: ") File "<string>", line 1, in <module> NameError: name 'Fred' is not defined

41 try: f = input("enter the temperature in farenheit: ") c = convert(f) print "The temperature in celsius is ",c except: print 'Please enter a temperature in farenheit'

42 $ python conv1.py Enter the temperature in farenheit: 212 The temperature in celsius is 100 $ $ python conv1.py Enter the temperature in farenheit: Fred Please enter a temperature in farenheit $ $ python conv1.py Enter the temperature in farenheit: 42.5 The temperature in celsius is $

43 Try... except We can "try" to execute parts of a program where errors might cause the program to crash We can "catch" errors and handle them gracefully

44 print len('abc') 3 print 'abc'.upper() ABC print 'abc'.isupper() False print type('abc') <type 'str'>

45 dir('abc') ['capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']

46 print len('abc') 3 print 'abc'.upper() ABC print 'abc'.isupper() False print type('abc') <type 'str'>

47 pals = list() pals.append('a') pals.append('x') pals.append('b') pals.append('y') pals.append('c') pals.append('z') print pals ['a', 'x', 'b', 'y', 'c', 'z'] dir(pals) ['append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

48 print len(pals) 6 print type(pals) <type 'list'> print pals.count('b') 1 print pals.index('b') 2

49 class Simple(): num = 0 def incr(self): self.num = self.num + 1 return self.num def square(self): self.num = self.num * self.num return self.num def decr(self): self.num = self.num - 1 return self.num

50 x = Simple() print dir(x) print "x.num == ", x.num print "x.incr()",x.incr() print "x.incr()",x.incr) print "x.decr()",x.dec() print "x.incr()",x.incr() print "x.square()",x.square() print "x.decr()",x.decr() print type(x)

51 $ python simple.py [' doc ', ' module ', 'decr', 'incr', 'num', 'square'] x.num == 0 x.incr() 1 x.incr() 2 x.decr() 1 x.incr() 2 x.square() 4 x.decr() 3 <type 'instance'>

52 Classes and Objects We can define classes and then create instances of our classes A class encapsulates data and methods related to a particular type of object An instance of a class is an object We invoke methods on objects Sometimes we pass an object as a parameter to a function

53 Lists Dictionaries Try... except Methods and Functions Classes and Objects Midterm Review Overview

Python Tutorial. Day 1

Python Tutorial. Day 1 Python Tutorial Day 1 1 Why Python high level language interpreted and interactive real data structures (structures, objects) object oriented all the way down rich library support 2 The First Program #!/usr/bin/env

More information

Python Objects. Charles Severance. Python for Everybody

Python Objects. Charles Severance. Python for Everybody Python Objects Charles Severance Python for Everybody www.py4e.com Warning This lecture is very much about definitions and mechanics for objects This lecture is a lot more about how it works and less about

More information

Introductory Linux Course. Python I. Martin Dahlö UPPMAX. Author: Nina Fischer. Dept. for Cell and Molecular Biology, Uppsala University

Introductory Linux Course. Python I. Martin Dahlö UPPMAX. Author: Nina Fischer. Dept. for Cell and Molecular Biology, Uppsala University Introductory Linux Course Martin Dahlö UPPMAX Author: Nina Fischer Dept. for Cell and Molecular Biology, Uppsala University August, 2018 Outline Python basics get started with Python Data types Control

More information

SI Networked Computing: Storage, Communication, and Processing, Winter 2009

SI Networked Computing: Storage, Communication, and Processing, Winter 2009 University of Michigan Deep Blue deepblue.lib.umich.edu 2009-01 SI 502 - Networked Computing: Storage, Communication, and Processing, Winter 2009 Severance, Charles Severance, C. (2008, December 19). Networked

More information

IPSL python tutorial: some exercises for beginners

IPSL python tutorial: some exercises for beginners 1 of 9 10/22/2013 03:55 PM IPSL python tutorial: some exercises for beginners WARNING! WARNING! This is the FULL version of the tutorial (including the solutions) WARNING! Jean-Yves Peterschmitt - LSCE

More information

Introductory Linux Course. Python I. Pavlin Mitev UPPMAX. Author: Nina Fischer Dept. for Cell and Molecular Biology, Uppsala University

Introductory Linux Course. Python I. Pavlin Mitev UPPMAX. Author: Nina Fischer Dept. for Cell and Molecular Biology, Uppsala University Introductory Linux Course Python I Pavlin Mitev UPPMAX Author: Nina Fischer Dept. for Cell and Molecular Biology, Uppsala University August, 2017 Outline Python introduction Python basics get started with

More information

Strings. Chapter 6. Python for Everybody

Strings. Chapter 6. Python for Everybody Strings Chapter 6 Python for Everybody www.py4e.com String Data Type A string is a sequence of characters A string literal uses quotes 'Hello' or "Hello" For strings, + means concatenate When a string

More information

Introductory Linux Course. Python I. Nina Fischer Dept. for Cell and Molecular Biology, Uppsala University

Introductory Linux Course. Python I. Nina Fischer Dept. for Cell and Molecular Biology, Uppsala University Introductory Linux Course Python I Nina Fischer Dept. for Cell and Molecular Biology, Uppsala University nina.fischer@icm.uu.se August 26, 2016 Outline q Python introducjon q Python basics get started

More information

Introductory Linux Course. Python I. Nina Fischer Dept. for Cell and Molecular Biology, Uppsala University

Introductory Linux Course. Python I. Nina Fischer Dept. for Cell and Molecular Biology, Uppsala University Introductory Linux Course Python I Nina Fischer Dept. for Cell and Molecular Biology, Uppsala University nina.fischer@icm.uu.se January 12, 2017 Outline q Python introducjon q Python basics get started

More information

(IUCAA, Pune) kaustubh[at]iucaa[dot]ernet[dot]in.

(IUCAA, Pune)   kaustubh[at]iucaa[dot]ernet[dot]in. Basics of Python by Kaustubh Vaghmare (IUCAA, Pune) E-mail: kaustubh[at]iucaa[dot]ernet[dot]in 1 of 29 Thursday 13 February 2014 11:59 AM Topics to be Covered (Not in any specific order.) Basic I/O in

More information

Programming environments. Introduction to Python. Adrian Copie, Ph.D.

Programming environments. Introduction to Python. Adrian Copie, Ph.D. Programming environments Introduction to Python Adrian Copie, Ph.D.! email: adrian.copie@info.uvt.ro, adrian.copie@e-uvt.ro UVT: room 050B 1 2 Bibliography 3 Mark Lutz - Learning Python (O Reilly) Leaning

More information

Strings. Looping. dna = 'ATGTAGC' print(dna) In [1]: ATGTAGC. You can loop over the characters of a string using a for loop, as we saw on Tuesday:

Strings. Looping. dna = 'ATGTAGC' print(dna) In [1]: ATGTAGC. You can loop over the characters of a string using a for loop, as we saw on Tuesday: Strings A string is simply a sequence of characters. From a biological perspective, this is quite useful, as a DNA sequence is simply a string composed of only 4 letters, and thus easily manipulated in

More information

Introduction to Python for Plone developers

Introduction to Python for Plone developers Plone Conference, October 15, 2003 Introduction to Python for Plone developers Jim Roepcke Tyrell Software Corporation What we will learn Python language basics Where you can use Python in Plone Examples

More information

(IUCAA, Pune) kaustubh[at]iucaa[dot]ernet[dot]in 1 of 29 Thursday 16 October :50 PM

(IUCAA, Pune)   kaustubh[at]iucaa[dot]ernet[dot]in 1 of 29 Thursday 16 October :50 PM Basics of Python by Kaustubh Vaghmare (IUCAA, Pune) E-mail: kaustubh[at]iucaa[dot]ernet[dot]in 1 of 29 Thursday 16 October 2014 03:50 PM Topics to be Covered (Not in any specific order.) Basic I/O in Python

More information

Assignment 1: Getting Started with Python

Assignment 1: Getting Started with Python Assignment 1: Getting Started with Python This tutorial will cover the basics of working in the Unix environment for the USC aludra.usc.edu machines and a small Python tutorial. It assumes you already

More information

Introduction to Text-Processing. Jim Notwell 23 January 2013

Introduction to Text-Processing. Jim Notwell 23 January 2013 Introduction to Text-Processing Jim Notwell 23 January 2013 1 Stanford UNIX Resources Host: cardinal.stanford.edu To connect from UNIX / Linux / Mac: ssh user@cardinal.stanford.edu To connect from Windows

More information

Handling Strings and Bytes

Handling Strings and Bytes Chapter 9 Handling Strings and Bytes In this chapter, we present some of the most used methods in strings and bytes objects. Strings are extremely useful to manage most of the output generated from programs,

More information

Python Programming. Lecture 1. January 25 th. University of Pennsylvania 2010, Adam Aviv CIS 192 Spring

Python Programming. Lecture 1. January 25 th. University of Pennsylvania 2010, Adam Aviv CIS 192 Spring Python Programming Lecture 1 January 25 th 2010, Adam Aviv CIS 192 Spring 2010 1 Welcome Where are you? Levine 100, Wu & Chen Auditorium 2/8 we will be in Heilmeir Hall (Towne 100) Who am I? Adam Aviv,

More information

Strings. Upsorn Praphamontripong. Note: for reference when we practice loop. We ll discuss Strings in detail after Spring break

Strings. Upsorn Praphamontripong. Note: for reference when we practice loop. We ll discuss Strings in detail after Spring break Note: for reference when we practice loop. We ll discuss Strings in detail after Spring break Strings Upsorn Praphamontripong CS 1111 Introduction to Programming Spring 2018 Strings Sequence of characters

More information

String Processing CS 1111 Introduction to Programming Fall 2018

String Processing CS 1111 Introduction to Programming Fall 2018 String Processing CS 1111 Introduction to Programming Fall 2018 [The Coder s Apprentice, 10] 1 Collections Ordered, Dup allow List Range String Tuple Unordered, No Dup Dict collection[index] Access an

More information

COMP 364: Classes, Objects, and Names

COMP 364: Classes, Objects, and Names COMP 364: Classes, Objects, and Names Carlos G. Oliver, Christopher Cameron September 13, 2017 1/26 Outline 1. 202 vs 364 2. Development Environment Recap 3. Basic Data Types 4. Variables 2/26 Your Development

More information

Duration: Six Weeks Faculty : Mr Sai Kumar, Having 10+ Yrs Experience in IT

Duration: Six Weeks Faculty : Mr Sai Kumar, Having 10+ Yrs Experience in IT Duration: Six Weeks Faculty : Mr Sai Kumar, Having 10+ Yrs Experience in IT Online Classes are also available Recorded class will be given if you miss any day interview tips and quiz at end of every module

More information

PyTrie Documentation. Release 0.3. George Sakkis

PyTrie Documentation. Release 0.3. George Sakkis PyTrie Documentation Release 0.3 George Sakkis Jun 05, 2017 Contents 1 Usage 3 2 Reference documentation 5 2.1 Classes.................................................. 5 2.2 Trie methods...............................................

More information

Module 3: Strings and Input/Output

Module 3: Strings and Input/Output Module 3: Strings and Input/Output Topics: Strings and their methods Printing to standard output Reading from standard input Readings: ThinkP 8, 10 1 Strings in Python: combining strings in interesting

More information

Lab 5: Function Types, Lists and Dictionaries, Sorting. Ling 1330/2330: Computational Linguistics Na-Rae Han

Lab 5: Function Types, Lists and Dictionaries, Sorting. Ling 1330/2330: Computational Linguistics Na-Rae Han Lab 5: Function Types, Lists and Dictionaries, Sorting Ling 1330/2330: Computational Linguistics Na-Rae Han Objectives Assignment review Pig Latin Tokenization function Two types of function: returning

More information

Princeton University COS 333: Advanced Programming Techniques A Subset of Python 2.7

Princeton University COS 333: Advanced Programming Techniques A Subset of Python 2.7 Princeton University COS 333: Advanced Programming Techniques A Subset of Python 2.7 Program Structure # Print "hello world" to stdout. print 'hello, world' # Print "hello world" to stdout. def f(): print

More information

Lecture 6: A step back

Lecture 6: A step back Lecture 6: A step back Last time We introduced a scripting language known as Python -- We started with the barest of motivation in terms of historical context and then jumped right in, focusing mainly

More information

CS61A Lecture 15 Object Oriented Programming, Mutable Data Structures. Jom Magrotker UC Berkeley EECS July 12, 2012

CS61A Lecture 15 Object Oriented Programming, Mutable Data Structures. Jom Magrotker UC Berkeley EECS July 12, 2012 CS61A Lecture 15 Object Oriented Programming, Mutable Data Structures Jom Magrotker UC Berkeley EECS July 12, 2012 COMPUTER SCIENCE IN THE NEWS http://www.iospress.nl/ios_news/music to my eyes device converting

More information

Essentials for Scientific Computing: Introduction to Python Day 11 & 12

Essentials for Scientific Computing: Introduction to Python Day 11 & 12 Essentials for Scientific Computing: Introduction to Python Day 11 & 12 Ershaad Ahamed TUE-CMS, JNCASR May 2012 1 Conditionals 1.1 if Construct In python blocks of code are created by indentation. That

More information

Intro to Python. by Daniel Greenfeld

Intro to Python. by Daniel Greenfeld Intro to Python by Daniel Greenfeld Intro to Python a.k.a. 20 cool things you can do with Python Tons of content Please hold your questions until the end Latest slides will be made available Special thanks

More information

Standard Types. Standard Types. Numbers

Standard Types. Standard Types. Numbers 4 Standard Types Lesson 4 is one of the longest lessons in this LiveLessons video course, so we recommend you break it up and view different segments at a time rather than watching it all in one sitting.

More information

Chapter 8: More About Strings. COSC 1436, Summer 2018 Dr. Zhang 7/10/2018

Chapter 8: More About Strings. COSC 1436, Summer 2018 Dr. Zhang 7/10/2018 Chapter 8: More About Strings COSC 1436, Summer 2018 Dr. Zhang 7/10/2018 Creating Strings The str Class s1 = str() # Create an empty string s2 = str("welcome") # Create a string Welcome Python provides

More information

Analyzing Tweets: Introducing Text Analysis Entities, parsing, regular expressions, frequency analysis

Analyzing Tweets: Introducing Text Analysis Entities, parsing, regular expressions, frequency analysis Analyzing Tweets: Introducing Text Analysis Entities, parsing, regular expressions, frequency analysis Outline What are entities? Parsing text Simple parsing Regular expressions Frequency analysis Entities

More information

Zero Buffer Documentation

Zero Buffer Documentation Zero Buffer Documentation Release Alex Gaynor and David Reid March 02, 2017 Contents 1 Installation 3 2 Contents 5 2.1 API Reference.............................................. 5 i ii Zero Buffer Documentation,

More information

Python for Informatics

Python for Informatics Python for Informatics Exploring Information Version 0.0.6 Charles Severance Chapter 6 Strings 6.1 A string is a sequence A string is a sequence of characters. You can access the characters one at a time

More information

(IUCAA, Pune) kaustubh[at]iucaa[dot]ernet[dot]in.

(IUCAA, Pune)   kaustubh[at]iucaa[dot]ernet[dot]in. Basics of Python - 2 by Kaustubh Vaghmare (IUCAA, Pune) E-mail: kaustubh[at]iucaa[dot]ernet[dot]in 1 of 54 Sunday 16 February 2014 05:30 PM Our First Program - Rewritten! Let us introduce the following

More information

Lecture #15: Generic Functions and Expressivity. Last modified: Wed Mar 1 15:51: CS61A: Lecture #16 1

Lecture #15: Generic Functions and Expressivity. Last modified: Wed Mar 1 15:51: CS61A: Lecture #16 1 Lecture #15: Generic Functions and Expressivity Last modified: Wed Mar 1 15:51:48 2017 CS61A: Lecture #16 1 Consider the function find: Generic Programming def find(l, x, k): """Return the index in L of

More information

Working with Sequences: Section 8.1 and 8.2. Bonita Sharif

Working with Sequences: Section 8.1 and 8.2. Bonita Sharif Chapter 8 Working with Sequences: Strings and Lists Section 8.1 and 8.2 Bonita Sharif 1 Sequences A sequence is an object that consists of multiple data items These items are stored consecutively Examples

More information

Advanced Python. Executive Summary, Session 1

Advanced Python. Executive Summary, Session 1 Advanced Python Executive Summary, Session 1 OBJECT: a unit of data of a particular type with characteristic functionality (i.e., methods and/or use with operators). Everything in Python is an object.

More information

Strings are actually 'objects' Strings

Strings are actually 'objects' Strings Strings are actually 'objects' Strings What is an object?! An object is a concept that we can encapsulate data along with the functions that might need to access or manipulate that data. What is an object?!

More information

Harness the power of Python magic methods and lazy objects.

Harness the power of Python magic methods and lazy objects. Harness the power of Python magic methods and lazy objects. By Sep Dehpour Aug 2016 zepworks.com sep at zepworks.com https://github.com/seperman/redisworks Lazy Loading Defer initialization of an object

More information

Introduction to String Manipulation

Introduction to String Manipulation Introduction to Computer Programming Introduction to String Manipulation CSCI-UA.0002 What is a String? A String is a data type in the Python programming language A String can be described as a "sequence

More information

Lecture #16: Generic Functions and Expressivity. Last modified: Fri Feb 26 19:16: CS61A: Lecture #16 1

Lecture #16: Generic Functions and Expressivity. Last modified: Fri Feb 26 19:16: CS61A: Lecture #16 1 Lecture #16: Generic Functions and Expressivity Last modified: Fri Feb 26 19:16:38 2016 CS61A: Lecture #16 1 Consider the function find: Generic Programming def find(l, x, k): """Return the index in L

More information

COLLEGE OF ENGINEERING, NASHIK-4

COLLEGE OF ENGINEERING, NASHIK-4 Pune Vidyarthi Griha s COLLEGE OF ENGINEERING, NASHIK-4 DEPARTMENT OF COMPUTER ENGINEERING Important PYTHON Questions 1. What is Python? Python is a high-level, interpreted, interactive and object-oriented

More information

UNIT-III. All expressions involving relational and logical operators will evaluate to either true or false

UNIT-III. All expressions involving relational and logical operators will evaluate to either true or false UNIT-III BOOLEAN VALUES AND OPERATORS: A boolean expression is an expression that is either true or false. The following examples use the operator ==, which compares two operands and produces if they are

More information

Python Lists. What is not a Collection. A List is a kind of Collection. friends = [ 'Joseph', 'Glenn', 'Sally' ]

Python Lists. What is not a Collection. A List is a kind of Collection. friends = [ 'Joseph', 'Glenn', 'Sally' ] Python Lists Chapter 8 Unless otherwise noted, the content of this course material is licensed under a Creative Commons Attribution.0 License. http://creativecommons.org/licenses/by/.0/. Copyright 2010,

More information

Babu Madhav Institute of Information Technology, UTU 2015

Babu Madhav Institute of Information Technology, UTU 2015 Five years Integrated M.Sc.(IT)(Semester 5) Question Bank 060010502:Programming in Python Unit-1:Introduction To Python Q-1 Answer the following Questions in short. 1. Which operator is used for slicing?

More information

Spring INF Principles of Programming for Informatics. Manipulating Lists

Spring INF Principles of Programming for Informatics. Manipulating Lists Manipulating Lists Copyright 2017, Pedro C. Diniz, all rights reserved. Students enrolled in the INF 510 class at the University of Southern California (USC) have explicit permission to make copies of

More information

Python Fundamentals. Wesley J. Chun 7+ HOURS OF VIDEO INSTRUCTION. mylivelessons.com informit.com/ph corepython.com. LESSON 1: Introduction [09:28]

Python Fundamentals. Wesley J. Chun 7+ HOURS OF VIDEO INSTRUCTION. mylivelessons.com informit.com/ph corepython.com. LESSON 1: Introduction [09:28] 7+ HOURS OF VIDEO INSTRUCTION Python Fundamentals Wesley J. Chun LESSON 1: Introduction [09:28] LESSON 2: Getting Started [38:47] LESSON 3: Syntax Basics [39:47] LESSON 4: Standard Types [2:03:34] LESSON

More information

Part IV. More on Python. Tobias Neckel: Scripting with Bash and Python Compact Max-Planck, February 16-26,

Part IV. More on Python. Tobias Neckel: Scripting with Bash and Python Compact Max-Planck, February 16-26, Part IV More on Python Compact Course @ Max-Planck, February 16-26, 2015 36 More on Strings Special string methods (excerpt) s = " Frodo and Sam and Bilbo " s. islower () s. isupper () s. startswith ("

More information

It is time to go find some Data to mess with!

It is time to go find some Data to mess with! Files & Lists 4 Software What Next? It is time to go find some Data to mess with! Input and Output Devices Central Processing Unit if x < 3: print Secondary Memory Files R Us Main Memory From stephen.marquard@uct.ac.za

More information

pygtrie Release Jul 03, 2017

pygtrie Release Jul 03, 2017 pygtrie Release Jul 03, 2017 Contents 1 Features 3 2 Installation 5 3 Upgrading from 0.9.x 7 4 Trie classes 9 5 PrefixSet class 19 6 Version History 21 Python Module Index 23 i ii Implementation of a

More information

Python. Executive Summary

Python. Executive Summary Python Executive Summary DEFINITIONS OBJECT: a unit of data of a particular type with characteristic functionality (i.e., methods and/or response to operators). Everything in Python is an object. "atomic"

More information

18.1. CS 102 Unit 18. Python. Mark Redekopp

18.1. CS 102 Unit 18. Python. Mark Redekopp 18.1 CS 102 Unit 18 Python Mark Redekopp 18.2 Credits Many of the examples below are taken from the online Python tutorial at: http://docs.python.org/tutorial/introduction.html 18.3 Python in Context Two

More information

1 Four reasons for learning python 3. 2 Installing Python 4

1 Four reasons for learning python 3. 2 Installing Python 4 Contents 1 Four reasons for learning python 3 2 Installing Python 4 3 Language basics 7 3.1 Built-in types........................................ 7 3.2 Useful built-in functions..................................

More information

CMPT 120 Basics of Python. Summer 2012 Instructor: Hassan Khosravi

CMPT 120 Basics of Python. Summer 2012 Instructor: Hassan Khosravi CMPT 120 Basics of Python Summer 2012 Instructor: Hassan Khosravi Python A simple programming language to implement your ideas Design philosophy emphasizes code readability Implementation of Python was

More information

Chapter 1 Summary. Chapter 2 Summary. end of a string, in which case the string can span multiple lines.

Chapter 1 Summary. Chapter 2 Summary. end of a string, in which case the string can span multiple lines. Chapter 1 Summary Comments are indicated by a hash sign # (also known as the pound or number sign). Text to the right of the hash sign is ignored. (But, hash loses its special meaning if it is part of

More information

Positional, keyword and default arguments

Positional, keyword and default arguments O More on Python n O Functions n Positional, keyword and default arguments in repl: >>> def func(fst, snd, default="best!"):... print(fst, snd, default)... >>> func(snd='is', fst='python') ('Python', 'is',

More information

6. Object-Oriented Programming, II. Programming and Algorithms II Degree in Bioinformatics Fall 2018

6. Object-Oriented Programming, II. Programming and Algorithms II Degree in Bioinformatics Fall 2018 6. Object-Oriented Programming, II Programming and Algorithms II Degree in Bioinformatics Fall 2018 Inheritance class Carnivora(Animal): class Canid(Carnivora): class Dog(Canid): class Husky(Dog): class

More information

Comp Exam 1 Overview.

Comp Exam 1 Overview. Comp 170-400 Exam 1 Overview. Resources During the Exam The exam will be closed book, no calculators or computers, except as a word processor. In particular no Python interpreter running in a browser or

More information

1 Classes. 2 Exceptions. 3 Using Other Code. 4 Problems. Sandeep Sadanandan (TU, Munich) Python For Fine Programmers May 16, / 19

1 Classes. 2 Exceptions. 3 Using Other Code. 4 Problems. Sandeep Sadanandan (TU, Munich) Python For Fine Programmers May 16, / 19 1 Classes 2 Exceptions 3 Using Other Code 4 Problems Sandeep Sadanandan (TU, Munich) Python For Fine Programmers May 16, 2009 1 / 19 Start with an Example Python is object oriented Everything is an object

More information

DECODE SPECIAL OPERATOR, FORMAT OPERATOR CONTENTS TRIPLE QUOTES. IS a-to-z METHODS REPLACE L E N G T H E X P A N D T A B S ENC0D3

DECODE SPECIAL OPERATOR, FORMAT OPERATOR CONTENTS TRIPLE QUOTES. IS a-to-z METHODS REPLACE L E N G T H E X P A N D T A B S ENC0D3 The Game of Strings CONTENTS ACCESS, UPDATE, ESCAPE UNICODE STRINGS MAX MIN TRIPLE QUOTES E X P A N D T A B S ENC0D3 DECODE JUST LSTRIP METHODS IS a-to-z UNIC DE JOIN INDEX SPECIAL OPERATOR, FORMAT OPERATOR

More information

Introduction to: Computers & Programming: Strings and Other Sequences

Introduction to: Computers & Programming: Strings and Other Sequences Introduction to: Computers & Programming: Strings and Other Sequences in Python Part I Adam Meyers New York University Outline What is a Data Structure? What is a Sequence? Sequences in Python All About

More information

At full speed with Python

At full speed with Python At full speed with Python João Ventura v0.1 Contents 1 Introduction 2 2 Installation 3 2.1 Installing on Windows............................ 3 2.2 Installing on macos............................. 5 2.3

More information

What is a class? Responding to messages. Short answer 7/19/2017. Code Listing 11.1 First Class. chapter 11. Introduction to Classes

What is a class? Responding to messages. Short answer 7/19/2017. Code Listing 11.1 First Class. chapter 11. Introduction to Classes chapter 11 Code Listing 11.1 First Class Introduction to Classes What is a class? If you have done anything in computer science before, you likely will have heard the term object oriented programming (OOP)

More information

Programming with Python

Programming with Python Programming with Python Lecture 3: Python Functions IPEC Winter School 2015 B-IT Dr. Tiansi Dong & Dr. Joachim Köhler Python Functions arguments return obj Global vars Files/streams Function Global vars

More information

CSCE 110 Programming I

CSCE 110 Programming I CSCE 110 Programming I Basics of Python (Part 3): Functions, Lists, For Loops, and Tuples Dr. Tiffani L. Williams Department of Computer Science and Engineering Texas A&M University Spring 2014 Tiffani

More information

Variable and Data Type I

Variable and Data Type I Islamic University Of Gaza Faculty of Engineering Computer Engineering Department Lab 2 Variable and Data Type I Eng. Ibraheem Lubbad September 24, 2016 Variable is reserved a location in memory to store

More information

LISTS WITH PYTHON. José M. Garrido Department of Computer Science. May College of Computing and Software Engineering Kennesaw State University

LISTS WITH PYTHON. José M. Garrido Department of Computer Science. May College of Computing and Software Engineering Kennesaw State University LISTS WITH PYTHON José M. Garrido Department of Computer Science May 2015 College of Computing and Software Engineering Kennesaw State University c 2015, J. M. Garrido Lists with Python 2 Lists with Python

More information

jxmlease Documentation

jxmlease Documentation jxmlease Documentation Release 1.0.2dev1 Juniper Networks April 18, 2016 Contents 1 Welcome 1 1.1 Installation................................................ 1 1.2 Parsing XML...............................................

More information

Object-Oriented Python

Object-Oriented Python Object-Oriented Python Everything is an object. Every object has a value. a type. an identity. a namespace. CS105 Python def initstudent(student, eid): global A class is like a namespace. CS105 Python

More information

Python OOP. Stéphane Vialette. LIGM, Université Paris-Est Marne-la-Vallée. October 19, 2010

Python OOP. Stéphane Vialette. LIGM, Université Paris-Est Marne-la-Vallée. October 19, 2010 Python OOP Stéphane Vialette LIGM, Université Paris-Est Marne-la-Vallée October 19, 2010 Stéphane Vialette (LIGM, Université Paris-Est Marne-la-Vallée) Python OOP October 19, 2010 1 / 59 Outline 1 Introduction

More information

Exception Handling. Genome 559

Exception Handling. Genome 559 Exception Handling Genome 559 Review - classes Use your own classes to: - package together related data - conceptually organize your code - force a user to conform to your expectations Class constructor:

More information

Analysis of unstructured data

Analysis of unstructured data Analysis of unstructured data Lecture 3 - Introduction to pandas module (continued) Janusz Szwabiński Overview: Iteration over data structures Sorting Working with text data Working with missing data Grouping

More information

Sequence types. str and bytes are sequence types Sequence types have several operations defined for them. Sequence Types. Python

Sequence types. str and bytes are sequence types Sequence types have several operations defined for them. Sequence Types. Python Python Sequence Types Sequence types str and bytes are sequence types Sequence types have several operations defined for them Indexing Python Sequence Types Each element in a sequence can be extracted

More information

Python. Olmo Zavala R. Python Exercises. Center of Atmospheric Sciences, UNAM. August 24, 2016

Python. Olmo Zavala R. Python Exercises. Center of Atmospheric Sciences, UNAM. August 24, 2016 Exercises Center of Atmospheric Sciences, UNAM August 24, 2016 NAND Make function that computes the NAND. It should receive two booleans and return one more boolean. logical operators A and B, A or B,

More information

Duration - 3 hours Student Number: CSC 108H1Y 2013 Final Exam. Aids allowed: none

Duration - 3 hours Student Number: CSC 108H1Y 2013 Final Exam. Aids allowed: none University of Toronto Faculty of Arts and Science August 0 Examinations CSC 08HY 0 Final Exam Duration - hours Student Number: Aids allowed: none Last Name: Lecture Section: L50 First Name: Instructor:

More information

CIS192 Python Programming

CIS192 Python Programming CIS192 Python Programming Iterators, Generators, Exceptions & IO Raymond Yin University of Pennsylvania September 28, 2016 Raymond Yin (University of Pennsylvania) CIS 192 September 28, 2016 1 / 26 Outline

More information

MULTIPLE CHOICE. Chapter Seven

MULTIPLE CHOICE. Chapter Seven Chapter Seven MULTIPLE CHOICE 1. Which of these is associated with a specific file and provides a way for the program to work with that file? a. Filename b. Extension c. File object d. File variable 2.

More information

CIS192 Python Programming

CIS192 Python Programming CIS192 Python Programming Object Oriented Programming Harry Smith University of Pennsylvania February 15, 2016 Harry Smith (University of Pennsylvania) CIS 192 Lecture 5 February 15, 2016 1 / 26 Outline

More information

Strings, Lists, and Sequences

Strings, Lists, and Sequences Strings, Lists, and Sequences It turns out that strings are really a special kind of sequence, so these operations also apply to sequences! >>> [1,2] + [3,4] [1, 2, 3, 4] >>> [1,2]*3 [1, 2, 1, 2, 1, 2]

More information

6. Data Types and Dynamic Typing (Cont.)

6. Data Types and Dynamic Typing (Cont.) 6. Data Types and Dynamic Typing (Cont.) 6.5 Strings Strings can be delimited by a pair of single quotes ('...'), double quotes ("..."), triple single quotes ('''...'''), or triple double quotes ("""...""").

More information

Class extension and. Exception handling. Genome 559

Class extension and. Exception handling. Genome 559 Class extension and Exception handling Genome 559 Review - classes 1) Class constructors - class MyClass: def init (self, arg1, arg2): self.var1 = arg1 self.var2 = arg2 foo = MyClass('student', 'teacher')

More information

Fundamentals of Programming (Python) Getting Started with Programming

Fundamentals of Programming (Python) Getting Started with Programming Fundamentals of Programming (Python) Getting Started with Programming Ali Taheri Sharif University of Technology Some slides have been adapted from Python Programming: An Introduction to Computer Science

More information

COMPSCI 105 S Principles of Computer Science. Classes 3

COMPSCI 105 S Principles of Computer Science. Classes 3 S2 2017 Principles of Computer Science Classes 3 Exercise } Exercise } Create a Student class: } The Student class should have three attributes: id, last_name, and first_name. } Create a constructor to

More information

Getting Started with Python

Getting Started with Python Fundamentals of Programming (Python) Getting Started with Python Sina Sajadmanesh Sharif University of Technology Some slides have been adapted from Python Programming: An Introduction to Computer Science

More information

Strings. Chapter 6. Python for Informatics: Exploring Information

Strings. Chapter 6. Python for Informatics: Exploring Information Strings Chpter 6 Python for Informtics: Exploring Informtion www.pythonlern.com String Dt Type A string is sequence of chrcters A string literl uses quotes 'Hello' or "Hello" For strings, + mens conctente

More information

Dictionaries. Looking up English words in the dictionary. Python sequences and collections. Properties of sequences and collections

Dictionaries. Looking up English words in the dictionary. Python sequences and collections. Properties of sequences and collections Looking up English words in the dictionary Comparing sequences to collections. Sequence : a group of things that come one after the other Collection : a group of (interesting) things brought together for

More information

CIS192 Python Programming

CIS192 Python Programming CIS192 Python Programming Iterators, Generators, IO, and Exceptions Harry Smith University of Pennsylvania February 15, 2018 Harry Smith (University of Pennsylvania) CIS 192 Lecture 5 February 15, 2018

More information

Fundamentals of Programming. Week 11 - Lecture 1: OOP Part 2.

Fundamentals of Programming. Week 11 - Lecture 1: OOP Part 2. 15-112 Fundamentals of Programming Week 11 - Lecture 1: OOP Part 2. March 29, 2016 >> Inheritance Today s Menu (Wrapping up OOP) - Employee and Student as subclasses of Person - isintance( ) vs type( )

More information

What is a Class? Short Answer. Responding to Messages. Everything in Python is an Object 11/8/2010

What is a Class? Short Answer. Responding to Messages. Everything in Python is an Object 11/8/2010 The Practice of Computing Using PYTHON William Punch Richard Enbody Chapter 11 Introduction to Classes class Student(object): """Simple Student class.""" def init (self,first='', last='', id=0): # init

More information

Abstract Data Types Chapter 1

Abstract Data Types Chapter 1 Abstract Data Types Chapter 1 Part Two Bags A bag is a basic container like a shopping bag that can be used to store collections. There are several variations: simple bag grab bag counting bag 2 Bag ADT

More information

CIS192 Python Programming

CIS192 Python Programming CIS192 Python Programming Object-Oriented Programming Robert Rand University of Pennsylvania February 10, 2016 Robert Rand (University of Pennsylvania) CIS 192 February 10, 2016 1 / 25 Outline 1 Object

More information

Chapter 10: Creating and Modifying Text Lists Modules

Chapter 10: Creating and Modifying Text Lists Modules Chapter 10: Creating and Modifying Text Lists Modules Text Text is manipulated as strings A string is a sequence of characters, stored in memory as an array H e l l o 0 1 2 3 4 Strings Strings are defined

More information

Teaching London Computing

Teaching London Computing Teaching London Computing A Level Computer Science Topic 3: Advanced Programming in Python William Marsh School of Electronic Engineering and Computer Science Queen Mary University of London Aims Further

More information

Variable and Data Type I

Variable and Data Type I The Islamic University of Gaza Faculty of Engineering Dept. of Computer Engineering Intro. To Computers (LNGG 1003) Lab 2 Variable and Data Type I Eng. Ibraheem Lubbad February 18, 2017 Variable is reserved

More information

Chapter 6: Files and Exceptions. COSC 1436, Spring 2017 Hong Sun 3/6/2017

Chapter 6: Files and Exceptions. COSC 1436, Spring 2017 Hong Sun 3/6/2017 Chapter 6: Files and Exceptions COSC 1436, Spring 2017 Hong Sun 3/6/2017 Function Review: A major purpose of functions is to group code that gets executed multiple times. Without a function defined, you

More information

Topic 7: Lists, Dictionaries and Strings

Topic 7: Lists, Dictionaries and Strings Topic 7: Lists, Dictionaries and Strings The human animal differs from the lesser primates in his passion for lists of Ten Best H. Allen Smith 1 Textbook Strongly Recommended Exercises The Python Workbook:

More information

Strings and Stream I/O

Strings and Stream I/O Strings and Stream I/O C Strings In addition to the string class, C++ also supports old-style C strings In C, strings are stored as null-terminated character arrays str1 char * str1 = "What is your name?

More information

Standard prelude. Appendix A. A.1 Classes

Standard prelude. Appendix A. A.1 Classes Appendix A Standard prelude In this appendix we present some of the most commonly used definitions from the standard prelude. For clarity, a number of the definitions have been simplified or modified from

More information