SlideShare a Scribd company logo
DATA STRUCTURES:
• DATA STRUCTURES ARE PARTICULAR WAYS OF STORING DATA TO
MAKE SOME OPERATION EASIER OR MORE EFFICIENT. THAT IS,
THEY ARE TUNED FOR CERTAIN TASKS
• DATA STRUCTURES ARE SUITED TO SOLVING CERTAIN PROBLEMS,
AND THEY ARE OFTEN ASSOCIATED WITH ALGORITHMS.
ROUGHLY TWO KINDS OF DATA STRUCTURES:
• BUILT-IN DATA STRUCTURES, DATA STRUCTURES THAT ARE SO
COMMON AS TO BE PROVIDED BY DEFAULT
• USER-DEFINED DATA STRUCTURES (CLASSES IN OBJECT ORIENTED
PROGRAMMING) THAT ARE DESIGNED FOR A PARTICULAR TASK
THE PYTHON LIST DATA STRUCTURE
• PYTHON COMES WITH A GENERAL SET OF BUILT IN DATA
STRUCTURES:
• LISTS
• TUPLES
• STRING
• DICTIONARIES
• SETS
• OTHERS...
• A LIST IS AN ORDERED SEQUENCE OF ITEMS.
• YOU HAVE SEEN SUCH A SEQUENCE BEFORE IN A STRING. A
STRING IS JUST A PARTICULAR KIND OF LIST
MAKE A LIST
SIMILARITIES WITH STRINGS
• CONCATENATE/+ (BUT ONLY OF LISTS)
• REPEAT/*
• INDEXING (THE [ ] OPERATOR)
• SLICING ([:])
• MEMBERSHIP (THE IN OPERATOR)
• LEN (THE LENGTH OPERATOR)
OPERATORS
[1, 2, 3] + [4]  [1, 2, 3, 4]
[1, 2, 3] * 2  [1, 2, 3, 1, 2, 3]
1 IN [1, 2, 3]  TRUE
[1, 2, 3] < [1, 2, 4]  TRUE
COMPARE INDEX TO INDEX, FIRST DIFFERENCE DETERMINES THE
RESULT
DIFFERENCES BETWEEN LISTS AND
STRINGS
• LISTS CAN CONTAIN A MIXTURE OF
ANY PYTHON OBJECT, STRINGS CAN
ONLY HOLD CHARACTERS
• 1,"BILL",1.2345, TRUE
• LISTS ARE MUTABLE, THEIR VALUES
CAN BE CHANGED, WHILE STRINGS
ARE IMMUTABLE
• LISTS ARE DESIGNATED WITH [ ],
WITH ELEMENTS SEPARATED BY
COMMAS, STRINGS USE " " OR ' '
INDEXING
• CAN BE A LITTLE CONFUSING, WHAT DOES THE [ ] MEAN, A LIST OR
AN INDEX?
[1, 2, 3][1]  2
• CONTEXT SOLVES THE PROBLEM. INDEX ALWAYS COMES AT THE
END OF AN EXPRESSION, AND IS PRECEDED BY SOMETHING (A
VARIABLE, A SEQUENCE)
LIST OF LISTS
MY_LIST = ['A', [1, 2, 3], 'Z']
• WHAT IS THE SECOND ELEMENT (INDEX 1) OF THAT LIST? ANOTHER LIST.
MY_LIST[1][0] # APPLY LEFT TO RIGHT
MY_LIST[1]  [1, 2, 3]
[1, 2, 3][0]  1
LIST FUNCTIONS
• LEN(LST): NUMBER OF ELEMENTS IN LIST (TOP LEVEL).
LEN([1, [1, 2], 3])  3
• MIN(LST): SMALLEST ELEMENT. MUST ALL BE THE SAME
TYPE!
• MAX(LST): LARGEST ELEMENT, AGAIN ALL MUST BE THE
SAME TYPE
• SUM(LST): SUM OF THE ELEMENTS, NUMERIC ONLY
ITERATION
YOU CAN ITERATE THROUGH THE ELEMENTS OF A LIST
LIKE YOU DID WITH A STRING:
CHANGE AN OBJECT'S CONTENTS
• STRINGS ARE IMMUTABLE. ONCE CREATED, THE OBJECT'S CONTENTS CANNOT
BE CHANGED. NEW OBJECTS CAN BE CREATED TO REFLECT A CHANGE, BUT THE
OBJECT ITSELF CANNOT BE CHANGED
MY_STR = 'ABC'
MY_STR[0] = 'Z' # CANNOT DO!
# INSTEAD, MAKE NEW STR
NEW_STR = MY_STR.REPLACE('A','Z')
LISTS ARE MUTABLE
UNLIKE STRINGS, LISTS ARE MUTABLE. YOU CAN CHANGE THE
OBJECT'S CONTENTS!
MY_LIST = [1, 2, 3]
MY_LIST[0] = 127
PRINT(MY_LIST)  [127, 2, 3]
LIST METHODS
• REMEMBER, A FUNCTION IS A SMALL PROGRAM (SUCH AS
LEN) THAT TAKES SOME ARGUMENTS, THE STUFF IN THE
PARENTHESIS, AND RETURNS SOME VALUE
• A METHOD IS A FUNCTION CALLED IN A SPECIAL WAY,
THE DOT CALL. IT IS CALLED IN THE CONTEXT OF AN
OBJECT (OR A VARIABLE ASSOCIATED WITH AN OBJECT)
AGAIN, LISTS HAVE METHODS
MY_LIST = ['A',1,TRUE]
MY_LIST.APPEND('Z')
the object that
we are calling the
method with
the name of
the method
arguments to
the method
SOME NEW METHODS
• A LIST IS MUTABLE AND CAN CHANGE:
• MY_LIST[0]='A' #INDEX ASSIGNMENT
• MY_LIST.APPEND()
• MY_LIST.EXTEND()
• MY_LIST.POP()
• MY_LIST.INSERT()
• MY_LIST.REMOVE()
• MY_LIST.SORT()
• MY_LIST.REVERSE()
MORE ABOUT LIST METHODS
• MOST OF THESE METHODS DO NOT RETURN A VALUE
• THIS IS BECAUSE LISTS ARE MUTABLE, SO THE METHODS
MODIFY THE LIST DIRECTLY. NO NEED TO RETURN
ANYTHING.
• CAN BE CONFUSING
UNUSUAL RESULTS
MY_LIST = [4, 7, 1, 2]
MY_LIST = MY_LIST.SORT()
MY_LIST  NONE # WHAT HAPPENED?
WHAT HAPPENED DID THE SORT OPERATION CHANGED THE
ORDER OF THE LIST IN PLACE (RIGHT SIDE OF ASSIGNMENT).
THEN THE SORT METHOD RETURNED NONE, WHICH WAS
ASSIGNED TO THE VARIABLE. THE LIST WAS LOST AND NONE IS
NOW THE VALUE OF THE VARIABLE.
RANGE
• WE HAVE SEEN THE RANGE FUNCTION BEFORE. IT
GENERATES A SEQUENCE OF INTEGERS.
• IN FACT WHAT IT GENERATES IS A LIST WITH THAT
SEQUENCE:
MYLIST = RANGE(1,5)
MYLIST IS [1,2,3,4]
SPLIT
• THE STRING METHOD SPLIT GENERATES A SEQUENCE OF
CHARACTERS BY SPLITTING THE STRING AT CERTAIN SPLIT-
CHARACTERS.
• IT RETURNS A LIST (WE DIDN'T MENTION THAT BEFORE)
SPLIT_LIST = 'THIS IS A TEST'.SPLIT()
SPLIT_LIST
 ['THIS', 'IS', 'A', 'TEST']
SORTING
ONLY LISTS HAVE A BUILT IN SORTING METHOD. THUS YOU OFTEN CONVERT YOUR
DATA TO A LIST IF IT NEEDS SORTING
MY_LIST = LIST('XYZABC')
MY_LIST ['X','Y','Z','A','B','C']
MY_LIST.SORT() # NO RETURN
MY_LIST 
['A', 'B', 'C', 'X', 'Y', 'Z']
REVERSE WORDS IN A STRING
JOIN METHOD OF STRING PLACES THE CALLING STRING
BETWEEN EVERY ELEMENT OF A LIST
SORTED FUNCTION
THE SORTED FUNCTION WILL BREAK A SEQUENCE INTO
ELEMENTS AND SORT THE SEQUENCE, PLACING THE RESULTS
IN A LIST
SORT_LIST = SORTED('HI MOM')
SORT_LIST 
[‘ ’,'H','I','M','M','O']
TUPLES
• TUPLES ARE SIMPLY IMMUTABLE LISTS
• THEY ARE PRINTED WITH (,)
LISTS AND TUPLE
• EVERYTHING THAT WORKS WITH A LIST WORKS WITH A
TUPLE EXCEPT METHODS THAT MODIFY THE TUPLE
• THUS INDEXING, SLICING, LEN, PRINT ALL WORK AS
EXPECTED
• HOWEVER, NONE OF THE MUTABLE METHODS WORK:
APPEND, EXTEND, DEL
COMMAS MAKE A TUPLE
FOR TUPLES, YOU CAN THINK OF A COMMA AS THE OPERATOR
THAT MAKES A TUPLE, WHERE THE ( ) SIMPLY ACTS AS A
GROUPING:
MYTUPLE = 1,2 # CREATES (1,2)
MYTUPLE = (1,) # CREATES (1)
MYTUPLE = (1) # CREATES 1 NOT (1)
MYTUPLE = 1, # CREATES (1)
MULTIPLE COLLECTS
[X+Y FOR X IN RANGE(1,4) FOR Y IN RANGE (1,4)]
IT IS AS IF WE HAD DONE THE FOLLOWING:
MY_LIST = [ ]
FOR X IN RANGE (1,4):
FOR Y IN RANGE (1,4):
MY_LIST.APPEND(X+Y)
 [2,3,4,3,4,5,4,5,6]

More Related Content

PPT
PDF
Heaps
PPTX
PPT
358 33 powerpoint-slides_4-introduction-data-structures_chapter-4
PDF
Arrays in python
PPTX
Hashing Technique In Data Structures
PPSX
Data Structure (Tree)
PPTX
Quick sort
Heaps
358 33 powerpoint-slides_4-introduction-data-structures_chapter-4
Arrays in python
Hashing Technique In Data Structures
Data Structure (Tree)
Quick sort

What's hot (20)

PPTX
Skip lists (Advance Data structure)
PPTX
Quick sort-Data Structure
PPT
SEARCHING AND SORTING ALGORITHMS
PDF
Immutable vs mutable data types in python
PPT
SINGLE-SOURCE SHORTEST PATHS
PPT
Arrays Data Structure
PPTX
Python strings presentation
PPTX
Trees (data structure)
PDF
List,tuple,dictionary
PPTX
B tree
PPTX
Data Structures - Lecture 9 [Stack & Queue using Linked List]
PPTX
Sparse matrix and its representation data structure
PPTX
Priority queue in DSA
PPTX
Array operations
PPTX
The Stack And Recursion
PPTX
Deque and its applications
PPTX
All pair shortest path
PPTX
Stack using Array
PPTX
Data structure using c module 1
Skip lists (Advance Data structure)
Quick sort-Data Structure
SEARCHING AND SORTING ALGORITHMS
Immutable vs mutable data types in python
SINGLE-SOURCE SHORTEST PATHS
Arrays Data Structure
Python strings presentation
Trees (data structure)
List,tuple,dictionary
B tree
Data Structures - Lecture 9 [Stack & Queue using Linked List]
Sparse matrix and its representation data structure
Priority queue in DSA
Array operations
The Stack And Recursion
Deque and its applications
All pair shortest path
Stack using Array
Data structure using c module 1
Ad

Similar to Lists and Tuples (20)

PPTX
Abstract Algebra and Category Theory
PPTX
UNIT-4.pptx python for engineering students
PPTX
powerpoint 2-13.pptx
PDF
8 python data structure-1
PPTX
R Programming and Lab - Unit III pptxs
PDF
List , tuples, dictionaries and regular expressions in python
PPTX
DATA, EXPRESSIONS, STATEMENTS IN PYTHON PROGRAMMING
PPTX
Python-List.pptx
PPTX
Data structure and algorithm list structures
PDF
lect 2-DS ALGO(online).pdf
PPTX
datastrubsbwbwbbwcturesinpython-3-4.pptx
PPTX
PPTX
Stack and queue power point presentation data structure and algorithms Stack-...
PPTX
python ..... _
PDF
Python Unit 5 Questions n Notes.pdf
PPTX
UNIT-3 python and data structure alo.pptx
PPTX
python lists with examples and explanation python lists with examples and ex...
PDF
DATA STRUCTURE BY SIVASANKARI
PPTX
02 Python Data Structure.pptx
PPTX
DictionariesPython Programming.One of the datatypes of Python which explains ...
Abstract Algebra and Category Theory
UNIT-4.pptx python for engineering students
powerpoint 2-13.pptx
8 python data structure-1
R Programming and Lab - Unit III pptxs
List , tuples, dictionaries and regular expressions in python
DATA, EXPRESSIONS, STATEMENTS IN PYTHON PROGRAMMING
Python-List.pptx
Data structure and algorithm list structures
lect 2-DS ALGO(online).pdf
datastrubsbwbwbbwcturesinpython-3-4.pptx
Stack and queue power point presentation data structure and algorithms Stack-...
python ..... _
Python Unit 5 Questions n Notes.pdf
UNIT-3 python and data structure alo.pptx
python lists with examples and explanation python lists with examples and ex...
DATA STRUCTURE BY SIVASANKARI
02 Python Data Structure.pptx
DictionariesPython Programming.One of the datatypes of Python which explains ...
Ad

More from Munazza-Mah-Jabeen (20)

PPTX
Virtual Functions
PPTX
The Standard Template Library
PPTX
Object-Oriented Software
PPTX
Templates and Exceptions
PPTX
Dictionaries and Sets
PPTX
More About Strings
PPTX
Streams and Files
PPT
Files and Exceptions
PPT
PPTX
PPT
Repitition Structure
PPTX
Inheritance
PPTX
Operator Overloading
PPT
Memory Management
PPTX
Arrays and Strings
PPTX
Objects and Classes
PPTX
PPTX
Structures
PPTX
Loops and Decisions
PPTX
C++ programming basics
Virtual Functions
The Standard Template Library
Object-Oriented Software
Templates and Exceptions
Dictionaries and Sets
More About Strings
Streams and Files
Files and Exceptions
Repitition Structure
Inheritance
Operator Overloading
Memory Management
Arrays and Strings
Objects and Classes
Structures
Loops and Decisions
C++ programming basics

Recently uploaded (20)

PPTX
GDM (1) (1).pptx small presentation for students
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PPTX
Cell Types and Its function , kingdom of life
PDF
102 student loan defaulters named and shamed – Is someone you know on the list?
PPTX
Institutional Correction lecture only . . .
PDF
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
PDF
Computing-Curriculum for Schools in Ghana
PDF
Microbial disease of the cardiovascular and lymphatic systems
PPTX
Cell Structure & Organelles in detailed.
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PDF
Classroom Observation Tools for Teachers
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
Anesthesia in Laparoscopic Surgery in India
PPTX
Pharma ospi slides which help in ospi learning
PPTX
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
PPTX
master seminar digital applications in india
PDF
Insiders guide to clinical Medicine.pdf
GDM (1) (1).pptx small presentation for students
human mycosis Human fungal infections are called human mycosis..pptx
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
Cell Types and Its function , kingdom of life
102 student loan defaulters named and shamed – Is someone you know on the list?
Institutional Correction lecture only . . .
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
Computing-Curriculum for Schools in Ghana
Microbial disease of the cardiovascular and lymphatic systems
Cell Structure & Organelles in detailed.
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
Abdominal Access Techniques with Prof. Dr. R K Mishra
Renaissance Architecture: A Journey from Faith to Humanism
Classroom Observation Tools for Teachers
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
Anesthesia in Laparoscopic Surgery in India
Pharma ospi slides which help in ospi learning
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
master seminar digital applications in india
Insiders guide to clinical Medicine.pdf

Lists and Tuples

  • 1. DATA STRUCTURES: • DATA STRUCTURES ARE PARTICULAR WAYS OF STORING DATA TO MAKE SOME OPERATION EASIER OR MORE EFFICIENT. THAT IS, THEY ARE TUNED FOR CERTAIN TASKS • DATA STRUCTURES ARE SUITED TO SOLVING CERTAIN PROBLEMS, AND THEY ARE OFTEN ASSOCIATED WITH ALGORITHMS. ROUGHLY TWO KINDS OF DATA STRUCTURES: • BUILT-IN DATA STRUCTURES, DATA STRUCTURES THAT ARE SO COMMON AS TO BE PROVIDED BY DEFAULT • USER-DEFINED DATA STRUCTURES (CLASSES IN OBJECT ORIENTED PROGRAMMING) THAT ARE DESIGNED FOR A PARTICULAR TASK
  • 2. THE PYTHON LIST DATA STRUCTURE • PYTHON COMES WITH A GENERAL SET OF BUILT IN DATA STRUCTURES: • LISTS • TUPLES • STRING • DICTIONARIES • SETS • OTHERS... • A LIST IS AN ORDERED SEQUENCE OF ITEMS. • YOU HAVE SEEN SUCH A SEQUENCE BEFORE IN A STRING. A STRING IS JUST A PARTICULAR KIND OF LIST
  • 4. SIMILARITIES WITH STRINGS • CONCATENATE/+ (BUT ONLY OF LISTS) • REPEAT/* • INDEXING (THE [ ] OPERATOR) • SLICING ([:]) • MEMBERSHIP (THE IN OPERATOR) • LEN (THE LENGTH OPERATOR)
  • 5. OPERATORS [1, 2, 3] + [4]  [1, 2, 3, 4] [1, 2, 3] * 2  [1, 2, 3, 1, 2, 3] 1 IN [1, 2, 3]  TRUE [1, 2, 3] < [1, 2, 4]  TRUE COMPARE INDEX TO INDEX, FIRST DIFFERENCE DETERMINES THE RESULT
  • 6. DIFFERENCES BETWEEN LISTS AND STRINGS • LISTS CAN CONTAIN A MIXTURE OF ANY PYTHON OBJECT, STRINGS CAN ONLY HOLD CHARACTERS • 1,"BILL",1.2345, TRUE • LISTS ARE MUTABLE, THEIR VALUES CAN BE CHANGED, WHILE STRINGS ARE IMMUTABLE • LISTS ARE DESIGNATED WITH [ ], WITH ELEMENTS SEPARATED BY COMMAS, STRINGS USE " " OR ' '
  • 7. INDEXING • CAN BE A LITTLE CONFUSING, WHAT DOES THE [ ] MEAN, A LIST OR AN INDEX? [1, 2, 3][1]  2 • CONTEXT SOLVES THE PROBLEM. INDEX ALWAYS COMES AT THE END OF AN EXPRESSION, AND IS PRECEDED BY SOMETHING (A VARIABLE, A SEQUENCE)
  • 8. LIST OF LISTS MY_LIST = ['A', [1, 2, 3], 'Z'] • WHAT IS THE SECOND ELEMENT (INDEX 1) OF THAT LIST? ANOTHER LIST. MY_LIST[1][0] # APPLY LEFT TO RIGHT MY_LIST[1]  [1, 2, 3] [1, 2, 3][0]  1
  • 9. LIST FUNCTIONS • LEN(LST): NUMBER OF ELEMENTS IN LIST (TOP LEVEL). LEN([1, [1, 2], 3])  3 • MIN(LST): SMALLEST ELEMENT. MUST ALL BE THE SAME TYPE! • MAX(LST): LARGEST ELEMENT, AGAIN ALL MUST BE THE SAME TYPE • SUM(LST): SUM OF THE ELEMENTS, NUMERIC ONLY
  • 10. ITERATION YOU CAN ITERATE THROUGH THE ELEMENTS OF A LIST LIKE YOU DID WITH A STRING:
  • 11. CHANGE AN OBJECT'S CONTENTS • STRINGS ARE IMMUTABLE. ONCE CREATED, THE OBJECT'S CONTENTS CANNOT BE CHANGED. NEW OBJECTS CAN BE CREATED TO REFLECT A CHANGE, BUT THE OBJECT ITSELF CANNOT BE CHANGED MY_STR = 'ABC' MY_STR[0] = 'Z' # CANNOT DO! # INSTEAD, MAKE NEW STR NEW_STR = MY_STR.REPLACE('A','Z')
  • 12. LISTS ARE MUTABLE UNLIKE STRINGS, LISTS ARE MUTABLE. YOU CAN CHANGE THE OBJECT'S CONTENTS! MY_LIST = [1, 2, 3] MY_LIST[0] = 127 PRINT(MY_LIST)  [127, 2, 3]
  • 13. LIST METHODS • REMEMBER, A FUNCTION IS A SMALL PROGRAM (SUCH AS LEN) THAT TAKES SOME ARGUMENTS, THE STUFF IN THE PARENTHESIS, AND RETURNS SOME VALUE • A METHOD IS A FUNCTION CALLED IN A SPECIAL WAY, THE DOT CALL. IT IS CALLED IN THE CONTEXT OF AN OBJECT (OR A VARIABLE ASSOCIATED WITH AN OBJECT)
  • 14. AGAIN, LISTS HAVE METHODS MY_LIST = ['A',1,TRUE] MY_LIST.APPEND('Z') the object that we are calling the method with the name of the method arguments to the method
  • 15. SOME NEW METHODS • A LIST IS MUTABLE AND CAN CHANGE: • MY_LIST[0]='A' #INDEX ASSIGNMENT • MY_LIST.APPEND() • MY_LIST.EXTEND() • MY_LIST.POP() • MY_LIST.INSERT() • MY_LIST.REMOVE() • MY_LIST.SORT() • MY_LIST.REVERSE()
  • 16. MORE ABOUT LIST METHODS • MOST OF THESE METHODS DO NOT RETURN A VALUE • THIS IS BECAUSE LISTS ARE MUTABLE, SO THE METHODS MODIFY THE LIST DIRECTLY. NO NEED TO RETURN ANYTHING. • CAN BE CONFUSING
  • 17. UNUSUAL RESULTS MY_LIST = [4, 7, 1, 2] MY_LIST = MY_LIST.SORT() MY_LIST  NONE # WHAT HAPPENED? WHAT HAPPENED DID THE SORT OPERATION CHANGED THE ORDER OF THE LIST IN PLACE (RIGHT SIDE OF ASSIGNMENT). THEN THE SORT METHOD RETURNED NONE, WHICH WAS ASSIGNED TO THE VARIABLE. THE LIST WAS LOST AND NONE IS NOW THE VALUE OF THE VARIABLE.
  • 18. RANGE • WE HAVE SEEN THE RANGE FUNCTION BEFORE. IT GENERATES A SEQUENCE OF INTEGERS. • IN FACT WHAT IT GENERATES IS A LIST WITH THAT SEQUENCE: MYLIST = RANGE(1,5) MYLIST IS [1,2,3,4]
  • 19. SPLIT • THE STRING METHOD SPLIT GENERATES A SEQUENCE OF CHARACTERS BY SPLITTING THE STRING AT CERTAIN SPLIT- CHARACTERS. • IT RETURNS A LIST (WE DIDN'T MENTION THAT BEFORE) SPLIT_LIST = 'THIS IS A TEST'.SPLIT() SPLIT_LIST  ['THIS', 'IS', 'A', 'TEST']
  • 20. SORTING ONLY LISTS HAVE A BUILT IN SORTING METHOD. THUS YOU OFTEN CONVERT YOUR DATA TO A LIST IF IT NEEDS SORTING MY_LIST = LIST('XYZABC') MY_LIST ['X','Y','Z','A','B','C'] MY_LIST.SORT() # NO RETURN MY_LIST  ['A', 'B', 'C', 'X', 'Y', 'Z']
  • 21. REVERSE WORDS IN A STRING JOIN METHOD OF STRING PLACES THE CALLING STRING BETWEEN EVERY ELEMENT OF A LIST
  • 22. SORTED FUNCTION THE SORTED FUNCTION WILL BREAK A SEQUENCE INTO ELEMENTS AND SORT THE SEQUENCE, PLACING THE RESULTS IN A LIST SORT_LIST = SORTED('HI MOM') SORT_LIST  [‘ ’,'H','I','M','M','O']
  • 23. TUPLES • TUPLES ARE SIMPLY IMMUTABLE LISTS • THEY ARE PRINTED WITH (,)
  • 24. LISTS AND TUPLE • EVERYTHING THAT WORKS WITH A LIST WORKS WITH A TUPLE EXCEPT METHODS THAT MODIFY THE TUPLE • THUS INDEXING, SLICING, LEN, PRINT ALL WORK AS EXPECTED • HOWEVER, NONE OF THE MUTABLE METHODS WORK: APPEND, EXTEND, DEL
  • 25. COMMAS MAKE A TUPLE FOR TUPLES, YOU CAN THINK OF A COMMA AS THE OPERATOR THAT MAKES A TUPLE, WHERE THE ( ) SIMPLY ACTS AS A GROUPING: MYTUPLE = 1,2 # CREATES (1,2) MYTUPLE = (1,) # CREATES (1) MYTUPLE = (1) # CREATES 1 NOT (1) MYTUPLE = 1, # CREATES (1)
  • 26. MULTIPLE COLLECTS [X+Y FOR X IN RANGE(1,4) FOR Y IN RANGE (1,4)] IT IS AS IF WE HAD DONE THE FOLLOWING: MY_LIST = [ ] FOR X IN RANGE (1,4): FOR Y IN RANGE (1,4): MY_LIST.APPEND(X+Y)  [2,3,4,3,4,5,4,5,6]