CMSC201 Computer Science I for Majors Lecture 14 – Tuples

Slides:



Advertisements
Similar presentations
Python Mini-Course University of Oklahoma Department of Psychology
Advertisements

ThinkPython Ch. 10 CS104 Students o CS104 n Prof. Norman.
CHAPTER 4 AND 5 Section06: Sequences. General Description "Normal" variables x = 19  The name "x" is associated with a single value Sequence variables:
Python Mini-Course University of Oklahoma Department of Psychology Day 4 – Lesson 15 Tuples 5/02/09 Python Mini-Course: Day 4 – Lesson 15 1.
Tuples. Tuples 1 A tuple is a sequence of immutable Python objects. Tuples are sequences, just like lists. The only difference is that tuples can't be.
String and Lists Dr. Benito Mendoza. 2 Outline What is a string String operations Traversing strings String slices What is a list Traversing a list List.
Sequences The range function returns a sequence
Guide to Programming with Python
Lilian Blot CORE ELEMENTS COLLECTIONS & REPETITION Lecture 4 Autumn 2014 TPOP 1.
October 4, 2005ICP: Chapter 4: For Loops, Strings, and Tuples 1 Introduction to Computer Programming Chapter 4: For Loops, Strings, and Tuples Michael.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 9 More About Strings.
Lecture 21 - Tuples COMPSCI 101 Principles of Programming.
Beyond Lists: Other Data Structures CS303E: Elements of Computers and Programming.
Chapter 7 Lists and Tuples. "The Practice of Computing Using Python", Punch & Enbody, Copyright © 2013 Pearson Education, Inc. Data Structures.
Lists and Tuples Intro to Computer Science CS1510 Dr. Sarah Diesburg.
Built-in Data Structures in Python An Introduction.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley STARTING OUT WITH Python Python First Edition by Tony Gaddis Chapter 8 Working.
10. Python - Lists The list is a most versatile datatype available in Python, which can be written as a list of comma-separated values (items) between.
Lecture 19 - More on Lists, Slicing Lists, List Functions COMPSCI 101 Principles of Programming.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley C H A P T E R 8 Lists and Tuples.
Lists CS303E: Elements of Computers and Programming.
OCR Computing GCSE © Hodder Education 2013 Slide 1 OCR GCSE Computing Python programming 8: Fun with strings.
Python Mini-Course University of Oklahoma Department of Psychology Day 3 – Lesson 11 Using strings and sequences 5/02/09 Python Mini-Course: Day 3 – Lesson.
CS190/295 Programming in Python for Life Sciences: Lecture 6 Instructor: Xiaohui Xie University of California, Irvine.
LISTS and TUPLES. Topics Sequences Introduction to Lists List Slicing Finding Items in Lists with the in Operator List Methods and Useful Built-in Functions.
Lecture 14 – lists, for in loops to iterate through the elements of a list COMPSCI 1 1 Principles of Programming.
Strings … operators Up to now, strings were limited to input and output and rarely used as a variable. A string is a sequence of characters or a sequence.
INTRO2CS Tirgul 4 1. What will we see today?  Strings  Lists  Tuples  Mutable and Immutable  Iterating over sequences  Nested Loops  Shallow and.
String and Lists Dr. José M. Reyes Álamo. 2 Outline What is a string String operations Traversing strings String slices What is a list Traversing a list.
PYTHON PROGRAMMING. WHAT IS PYTHON?  Python is a high-level language.  Interpreted  Object oriented (use of classes and objects)  Standard library.
Guide to Programming with Python Chapter Four Strings, and Tuples; for Loops: The Word Jumble Game.
String and Lists Dr. José M. Reyes Álamo.
CMSC201 Computer Science I for Majors Lecture 05 – Comparison Operators and Boolean (Logical) Operators Prof. Katherine Gibson Based on slides by Shawn.
Using Molecular Biology to Teach Computer Science
Tuples and Lists.
CMSC201 Computer Science I for Majors Lecture 17 – Dictionaries
CMSC201 Computer Science I for Majors Lecture 12 – Lists (cont)
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Introduction to Strings
Introduction to Strings
Bryan Burlingame Halloween 2018
Bryan Burlingame 17 October 2018
CS190/295 Programming in Python for Life Sciences: Lecture 6
8 – Lists and tuples John R. Woodward.
CMSC201 Computer Science I for Majors Lecture 12 – Tuples
Intro to Computer Science CS1510 Dr. Sarah Diesburg
CEV208 Computer Programming
String and Lists Dr. José M. Reyes Álamo.
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Topics Sequences Introduction to Lists List Slicing
Introduction to Strings
Intro to Computer Science CS1510 Dr. Sarah Diesburg
15-110: Principles of Computing
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Topics Sequences Lists Copying Lists Processing Lists
By- Anshul Kumar Class: XI “B”
Intro to Computer Science CS1510 Dr. Sarah Diesburg
CISC101 Reminders Assignment 2 due today.
Bryan Burlingame 13 March 2019
15-110: Principles of Computing
Bryan Burlingame Halloween 2018
Topics Sequences Introduction to Lists List Slicing
Python Review
CMSC201 Computer Science I for Majors Lecture 16 – Tuples
Intro to Computer Science CS1510 Dr. Sarah Diesburg
By Himanshi dixit 11th ’B’
CSE 231 Lab 7.
Intro to Computer Science CS1510 Dr. Sarah Diesburg
Presentation transcript:

CMSC201 Computer Science I for Majors Lecture 14 – Tuples All materials copyright UMBC unless otherwise noted

Last Class We Covered Mutability Modularity Shallow copy Relation to functions Modularity Program Design Incremental Development

Any Questions from Last Time?

Announcement – Advising ALL students must receive advising authorization prior to registering for classes Advising Appointments are currently available Students can register between Nov 1 – Nov 18 Depending on number of earned credits CMSC & ENGR - Sign up for an apt via the online scheduler: http://coeadvising.umbc.edu/ Group Advising is an excellent option!

Announcement – Survey Available now on Blackboard Due by Tuesday, October 25th at midnight Check completion under “My Grades” Some statistics (from Fall 2015): If they had taken the surveys… 9 students would have gotten an A instead of a B 4 students would have gotten a B instead of a C 9 students would have gotten a C instead of a D

Today’s Objectives Learn about the tuple data structure in Python Perform basic operations with tuples including: Creation Conversion Repetition Slicing Traversing Use tuples in functions (as return values)

Tuples

The Tuple Data Structure In Python, a tuple is an immutable sequence of values What does immutable mean? Tuples are immutable which means you cannot update or change the values of tuple elements

The Tuple Data Structure Each value in the tuple is an element or item Elements can be any Python data type Tuples can mix data types Elements can be nested tuples year_born = ("Paris Hilton", 1981) tuple name first element: a string second element: an integer

Creating Tuples

Creating Tuples The empty tuple is written as two parentheses containing nothing tup1 = () To cast a list as a tuple, you use tuple() myList = [5, 15, 23] myTuple = tuple(myList) print(type(myTuple)) <class 'tuple'>

Creating Tuples numbers = (1, 2, 3, 4) print (numbers) (1, 2, 3, 4) cheeses = ('swiss', 'cheddar', 'ricotta', 'gouda') print (cheeses) ('swiss', 'cheddar', 'ricotta', 'gouda')

Tuples with one element require a comma Creating Tuples t1 = ('a') print (t1, type(t1)) a <class 'str'> Is this a tuple? t2 = ('a',) print (t2, type(t2)) ('a',) <class 'tuple'> Tuples with one element require a comma

Creating Tuples t3 = tuple('a') print (t3, type(t3)) empty = tuple() print (empty) ('a',) <class 'tuple'> ()

Creating Tuples aList = [1, 2, 3, 4] aTuple = tuple(aList) print (aTuple) aStr = 'parrot' aTuple2 = tuple(aStr) print (aTuple2) What does this output? (1, 2, 3, 4) ('p', 'a', 'r', 'r', 'o', 't')

Indexing and Slicing Tuples

Tuple Indexing Just like other sequences (strings), elements within a tuple are indexed cheeses = ('swiss', 'cheddar', 'ricotta', 'gouda') print (cheeses[0]) cheeses[0] = 'swiss' Tuples are immutable. What does this do? Nothing! (an error)

Slicing a Tuple Like other sequences, tuples can be sliced Slicing a tuple creates a new tuple. It does not change the original tuple. cheeses = ('swiss', 'cheddar', 'ricotta', 'gouda') print (cheeses[1:4]) ('cheddar', 'ricotta', 'gouda') What does this output?

Tuple Operations

Operations on Tuples Tuples support all the standard sequence operations, including: Membership tests (using the in keyword) Comparison (element-wise) Iteration (e.g., in a for loop) Concatenation and repetition The len() function The min() and max() functions

Membership Tests (in) In Python, the in keyword is used to test if a sequence (list, tuple, string etc.) contains a value. Returns True or False a = [1, 2, 3, 4, 5] print(5 in a) print(10 in a) True False What does this output?

Comparison In Python 3.3, we can use the comparison operator, ==, to do tuple comparison Returns True or False tuple1, tuple2 = (123, 'xyz'), (456, 'abc') tuple3 = (456, 'abc') print (tuple1==tuple2) print (tuple2==tuple3) What does this output? False True From: http://www.tutorialspoint.com/python/tuple_cmp.htm

Iteration teams = ((1, 'Ravens'),(2, 'Panthers'), (5, 'Eagles'),(7, 'Steelers')) for (index, name) in teams: print(index, name) Notice tuple of tuples What does this output? 1 Ravens 2 Panthers 5 Eagles 7 Steelers

Iteration t = [('a', 0), ('b', 1), ('c', 2)] for letter, number in t: print (number, letter) Notice list of tuples What does this output? 0 a 1 b 2 c

Concatenation (+) The + operator returns a new tuple that is a concatenation of two tuples a = (1, 2, 3) b = (4, 5, 6) c = a + b print (a, b, c) (1, 2, 3) (4, 5, 6) (1, 2, 3, 4, 5, 6) What does this output?

Repetition (*) The * operator returns a new tuple that repeats the tuple. a = (1, 2, 3) b = (4, 5, 6) print (a*2, b) (1, 2, 3, 1, 2, 3) (4, 5, 6) What does this output?

len() Functions The method len() returns the number of elements in the tuple. tuple0 = () print(len(tuple0)) tupleA = ("UMBC", "is", "the", "best") print(len(tupleA)) What does this output? 4

min() and max() Functions max(tuple) Returns item from the tuple with max value min(tuple) Returns item from the tuple with min value What does this output? myTuple = tuple('parrot') print (myTuple) print(min(myTuple)) print(max(myTuple)) ('p', 'a', 'r', 'r', 'o', 't') a t

Tuples and Functions (return)

Tuples and functions Python functions (as is true of most languages) can only return one value But… but… we’ve returned multiple values before! If multiple objects are packaged together into a tuple, then the function can return the objects as a single tuple Many Python functions return tuples

Example: min_max.py (3, 98) (' ', 'w') What does this output? # Returns the smallest and largest # elements of a sequence as a tuple def min_max(t): return min(t), max(t) seq = [12, 98, 23, 74, 3, 54] print (min_max(seq)) string = 'She turned me into a newt!' print (min_max(string)) myMin, myMax = min_max(string) What does this output? (3, 98) (' ', 'w')

Any Other Questions?

Announcements Homework 6 is due Wednesday We’ll cover the midterm in class next time