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 Accessing the Individual Characters in a String (1 of 2) ▪ 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] Accessing the Individual Characters in a String (2 of 3) Accessing the Individual Characters in a String (3 of 3) ▪ 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 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 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 Strings Are Immutable (2 of 2) 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 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 String Methods ▪ Strings in Python have many types of methods, divided into different types of operations ▪ General format: mystring.method(arguments) ▪ Type of String Methods ▪ Testing Methods- Test a string for specific characteristics ▪ Generally Boolean methods, that return True if a condition exists, and False otherwise ▪ Modification Methods- Modifies strings ▪ Search and Replace Methods- Quick In-Class Exercise (10 Mins)
▪ Page 446-447 of Text Book 15
String Methods: Modification Methods
▪ 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 String Methods: Search and Replace Method ▪ 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 String Methods: Search and Replace Method
▪ Several methods to accomplish this
▪ 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 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 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 23 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 25 In-Class Exercise 2 (20 Mins) 26 In-Class Exercise-2