08 - Gaddis Python - Lecture - PPT - ch08
08 - Gaddis Python - Lecture - PPT - ch08
Fifth Edition
Chapter 8
More About Strings
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8-1
Topics
• Basic String Operations
• String Slicing
• Testing, Searching, and Manipulating Strings
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8-2
Basic String Operations
• Many types of programs perform operations on strings
• In Python, many tools for examining and manipulating
strings
– Strings are sequences, so many of the tools that work
with sequences work with strings
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8-3
Accessing the Individual Characters in
a String (1 of 4)
• To access an individual character in a string:
– Use a for loop
Format: for character in string:
Useful when need to iterate over the whole string, such
as to count the occurrences of a specific character
– Use indexing
Each character has an index specifying its position in the
string, starting at 0
Format: character = my_string[i]
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8-4
Accessing the Individual Characters in
a String (2 of 4)
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8-5
Accessing the Individual Characters in
a String (3 of 4)
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8-6
Accessing the Individual Characters in
a String (4 of 4)
• IndexError exception will occur if:
– You try to use an index that is out of range for the string
Likely to happen when loop iterates beyond the end of
the string
• len(string) function can be used to obtain the
length of a string
– Useful to prevent loops from iterating beyond the end
of a string
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8-7
String Concatenation
• Concatenation: appending one string to the end of
another string
– Use the + operator to produce a string that is a
combination of its operands
– The augmented assignment operator += can also be
used to concatenate strings
The operand on the left side of the += operator must be
an existing variable; otherwise, an exception is raised
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8-8
Strings Are Immutable (1 of 2)
• Strings are immutable
– Once they are created, they cannot be changed
Concatenation doesn’t actually change the existing
string, but rather creates a new string and assigns the
new string to the previously used variable
– Cannot use an expression of the form
– string[index] = new_character
Statement of this type will raise an exception
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8-9
Strings Are Immutable (2 of 2)
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8 - 10
String Slicing
• Slice: span of items taken from a sequence, known as
substring
– Slicing format: string[start : end]
Expression will return a string containing a copy of the
characters from start up to, but not including, end
If start not specified, 0 is used for start index
If end not specified, len(string) is used for end index
– Slicing expressions can include a step value and
negative indexes relative to end of string
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8 - 11
Testing, Searching, and Manipulating
Strings
• You can use the in operator to determine whether
one string is contained in another string
– General format: string1 in string2
string1 and string2 can be string literals or
variables referencing strings
• Similarly you can use the not in operator to
determine whether one string is not contained in
another string
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8 - 12
String Methods (1 of 6)
• Strings in Python have many types of methods,
divided into different types of operations
– General format:
mystring.method(arguments)
• Some methods test a string for specific characteristics
– Generally Boolean methods, that return True if a
condition exists, and False otherwise
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8 - 13
String Methods (2 of 6)
Table 8-1 Some string testing methods
Method Description
isalnum() Returns true if the string contains only alphabetic letters or digits and is at least one
character in length. Returns false otherwise.
isalpha() Returns true if the string contains only alphabetic letters and is at least one
character in length. Returns false otherwise.
isdigit() Returns true if the string contains only numeric digits and is at least one character in
length. Returns false otherwise.
islower() Returns true if all of the alphabetic letters in the string are lowercase, and the string
contains at least one alphabetic letter. Returns false otherwise.
isspace() Returns true if the string contains only whitespace characters and is at least one
character in length. Returns false otherwise. (Whitespace characters are spaces,
newlines (\n), and tabs (\t).
isupper() Returns true if all of the alphabetic letters in the string are uppercase, and the string
contains at least one alphabetic letter. Returns false otherwise.
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8 - 14
String Methods (3 of 6)
Table 8-2 String Modification Methods
Method Description
lower() Returns a copy of the string with all alphabetic letters converted to lowercase. Any
character that is already lowercase, or is not an alphabetic letter, is unchanged.
lstrip() Returns a copy of the string with all leading whitespace characters removed. Leading
whitespace characters are spaces, newlines (\n), and tabs (\t) that appear at the
beginning of the string.
lstrip(char) The char argument is a string containing a character. Returns a copy of the string with all
instances of char that appear at the beginning of the string removed.
rstrip() Returns a copy of the string with all trailing whitespace characters removed. Trailing
whitespace characters are spaces, newlines (\n), and tabs (\t) that appear at the end of
the string.
rstrip(char) The char argument is a string containing a character. The method returns a copy of the
string with all instances of char that appear at the end of the string removed.
strip() Returns a copy of the string with all leading and trailing whitespace characters removed.
strip(char) Returns a copy of the string with all instances of char that appear at the beginning and
the end of the string removed.
upper() Returns a copy of the string with all alphabetic letters converted to uppercase. Any
character that is already uppercase, or is not an alphabetic letter, is unchanged.
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8 - 15
String Methods (4 of 6)
• Programs commonly need to search for substrings
• Several methods to accomplish this:
– endswith(substring): checks if the string ends
with substring
Returns True or False
– startswith(substring): checks if the string starts
with substring
Returns True or False
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8 - 16
String Methods (5 of 6)
• Several methods to accomplish this (cont’d):
– find(substring): searches for substring within
the string
Returns lowest index of the substring, or if the substring
is not contained in the string, returns -1
– replace(substring, new_string):
Returns a copy of the string where every occurrence of
substring is replaced with new_string
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8 - 17
String Methods (6 of 6)
Method Description
endswith(substring) The substring argument is a string. The method returns true if
the string ends with substring.
find(substring) The substring argument is a string. The method returns the
lowest index in the string where substring is found. If
substring is not found, the method returns −1.
replace(old, new) The old and new arguments are both strings. The method returns a
copy of the string with all instances of old replaced by new.
startswith(substring) The substring argument is a string. The method returns true if
the string starts with substring.
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8 - 18
Splitting a String (1 of 2)
• split method: returns a list containing the words in
the string
– By default, uses space as separator
– Can specify a different separator by passing it as an
argument to the split method
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8 - 19
Splitting a String (2 of 2)
• Examples:
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8 - 20
Summary
• This chapter covered:
– String operations, including:
Methods for iterating over strings
Repetition and concatenation operators
Strings as immutable objects
Slicing strings and testing strings
String methods
Splitting a string
Copyright © 2021, 2018, 2015 Pearson Education, Inc. All Rights Reserved 8 - 21