CHAPTER 8
More
About
Strings
Copyright © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
Topics
Basic String Operations
String Slicing
Testing, Searching, and Manipulating
Strings
Copyright © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
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 © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
Accessing the Individual
Characters in a String
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 © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
Copyright © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
Accessing the Individual
Characters in a String (cont’d.)
Copyright © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
Accessing the Individual
Characters in a String (cont’d.)
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 © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
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 © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
Strings Are Immutable
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 © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
Strings Are Immutable
(cont’d.)
Copyright © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
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 © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
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 © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
String Methods
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 © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
String Methods (cont’d.)
Copyright © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
String Methods (cont’d.)
Some methods return a copy of the
string, to which modifications have
been made
Simulate strings as mutable objects
String comparisons are case-sensitive
Uppercase characters are distinguished from
lowercase characters
lower and upper methods can be used for
making case-insensitive string comparisons
Copyright © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
String Methods (cont’d.)
Copyright © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
String Methods (cont’d.)
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 © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
String Methods (cont’d.)
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 © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
String Methods (cont’d.)
Copyright © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
The Repetition Operator
Repetition operator: makes multiple
copies of a string and joins them
together
The * symbol is a repetition operator when
applied to a string and an integer
String is left operand; number is right
General format: string_to_copy * n
Variable references a new string which
contains multiple copies of the original string
Copyright © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
Splitting a String
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 © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
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 © 2015 Pearson Education, Inc. Publishing as Pearson Addison-Wesley