Guide to High School Computer Science
  • 💻Introduction
    • windows & Python Development
    • macOS & Python Development
    • Visual Studio Code Settings
    • Set up Github
    • Author Page
  • 🧠Prerequisite Skills
    • Keyboard Typing
    • Files & Directories
    • Use of Command Line
    • Git & GitHub
    • Markdown
    • Starting Your Python Project
  • 🐍Python Programming
    • 🍎Python Basics
      • What is Python?
      • Procedural Programming & Programming Paradigms
      • String Formatting
      • Data Types
      • Input & Output to Console
      • Working with Numbers
      • Useful Built-in Functions
      • Math & Random Module
      • Boolean Data Object
      • Comparison, Logical, and Membership Operators
      • If Statements
      • Binary Decisions
      • Multiple Decisions
      • Nested Conditions
      • [EXTRA] Bitwise Operators
      • [EXTRA] Python Style Guide
    • ⏮️Iterations
      • Introduction to While Loops
      • Infinite Loop
      • Controlling Your While Loops
      • Introduction to For Loops
      • For Loops w/ Numeric Sequences
      • For Loops w/ Strings & Lists
      • Iterable Functions w/ For Loops
    • 📦Collections
      • Strings
        • String Basics
        • String Indexing
        • String Slicing
        • String Operators & Functions
        • Basic String Methods
        • String Methods Extended
        • String Methods Document
      • Tuples & Lists
        • Tuples
        • List Basics
        • List are Mutable
        • Adding Items to a List
        • Removing Items from a List
        • Search & Reverse a List
        • List Comprehension
        • List Methods Document
      • Sets
      • Dictionary
      • How to Store Multiple Data Items
    • 💡Defining Functions
      • Functions
      • print() vs return
      • Pre-determined Arguments
      • Nested Functions
      • Map & Filter
      • [Extra] Dynamic Arguments
    • 💾File I/O
      • How to Save Text to an External File
      • Reading CSV in Python
      • Reading JSON in Python
    • 🔨Basic Python Projects
      • Basic Calculator
        • Improving the calculator
        • Exercise Set 1
        • Exercise Set 2
        • 💎Streamlit Application #1
      • Basic Password Generator
        • Exercise Set 3
        • Exercises Related to Math
        • 💎Streamlit Application #2
      • A To-Do Task List
    • ⏳Introduction to Algorithmic Thinking
      • Big-O Notation
      • Basic Algorithms
        • Linear Search
        • Binary Search
        • Basic Sorting Algorithms
      • Recursion
      • Brute Force Algorithms
      • Greedy Algorithm
        • Time on Task (CCC 2013 J4)
        • Dijkstra’s Algorithm
      • Divide and Conquer
        • Merge Sort
      • Dynamic Programming
    • 🤯Object Oriented Programming
      • Class & Objects (Definitions)
      • OOP in Python
      • Encapsulation
      • Polymorphism
      • Inheritance & Overriding
      • Override Magic Methods
      • Case Study: 2D Vectors
      • Case Study: Deck of Cards
      • Exercise
      • Abstract Data Types
      • Case Study: Static 1D Array From Java
    • Competitive Programming
      • Is This Sum Possible?
        • Is the dataset sorted?
        • Searching for a value
        • Determine if the difference between an integer from the array and the target value exists
        • Sorting Algorithms
        • Using Two Pointers
      • Two Sum - LeetCode
        • Generate all possible pairs of values
        • Subtract each value from the target, see if the difference exists in the list
      • Longest Common Prefix - LeetCode
        • Compare all possible prefixes
        • Create the longest common prefix with the direct neighbour
      • Length of Last Word - LeetCode
        • Compare all possible prefixes
      • Where can I go from one point to another?
      • Sample Outline
    • IB Recipe Book
  • 💾Python & Databases
    • Intro to Databases & Data Modeling
      • Common Data Types in SQL
      • Introduction to ERDs
      • Primary Keys and Foreign Keys
      • Database Normalization
    • What is SQL?
      • Getting Started
      • SELECT Queries
        • Selection with Conditions
        • Selection with Fuzziness
        • Selection and Sorting in Order
        • Selection without Duplicates
        • Selection with Limited Number of Outputs
      • AGGREGATE Queries
        • Counting Rows
        • Sum, Average, Min/Max Queries
        • Working with Aggregate Queries
        • Power of using Groups
        • Exercise
      • Interacting with Multiple Table
      • Inserting Data
      • External Resource
  • ☕Java Essentials
    • Basics
      • Starting Java
      • Data & Variables
      • Handling User Inputs & Type Conversion
      • Arithmetic
      • IPO Model
      • Basic Built-in Methods
      • Exercise Questions
    • Conditionals
      • Boolean Operators
      • Compare Strings
      • If Statements
      • If Else Statements
      • Making Multiple Decisions
      • Using Switch
      • Flowchart Symbols
      • Exercise Questions
    • Iterations
      • While Loops
      • For Loop
      • Exercises
    • Java Type Casting
    • Strings
      • Common String Practices
      • String Formatting
      • Java Special Characters
    • Collection
      • Arrays
      • For Each Loop
      • ArrayList
      • Exercise Questions
    • Static Methods
      • (Aside) Clearing your Console
    • Randomness in Java
    • Delayed Output in Java
    • Java Output Formatting
    • Java Style Guide
  • 🛠️JavaScript Programming
    • Our Programming Editor & Workflow
      • Hello, world!
      • Commenting & Variables
      • Data in JavaScript
      • Operators
      • String Formatting
      • Getting User Input
    • JavaScript Exercise Set 1
    • Making Decisions
      • Comparing Values
      • Combining Boolean Comparisons
      • Creating Branches
    • JavaScript Exercise Set 2
    • While Loops
      • Infinite While Loop
      • While Loops and Numbers
      • While Loops and Flags
      • While loops w/ Strings
    • JavaScript Exercise Set 3
    • Subprograms & Functions
      • Creating a Function in JavaScript
      • Function with Input and Assignable Output
    • JavaScript Exercise Set 4
  • 💾Topics in CS
    • Computer Environments & Systems
      • Computer Components
        • In-depth Explanations
      • File Maintenance
      • Computer & Safety
      • Software Development
      • Bits & Binary
    • Careers related to Computer Science
    • Postsecondary Opportunities
Powered by GitBook
On this page
  1. Python Programming
  2. Collections
  3. Strings

String Methods Extended

The string data type has a lot of useful built-in methods that can help us solve more complex problems.

Removing Leading and/or Trailing Spaces

These methods do not remove spaces within the text.

string_data.strip()

  • Returns a string that loses all leading and trailing white spaces

string_data.lstrip()

  • Returns a string that loses all leading white spaces

string_data.rstrip()

  • Returns a string that loses all trailing white spaces

# Strip() Examples

word1 = '   h ello   '
# 3 spaces then h ello then 3 spaces
print('word1.lstrip():', word1.lstrip(), 'world.')
print('word1.rstrip():', word1.rstrip(), 'world.')
print('word1.strip():', word1.strip(), 'world.')
word1.lstrip(): h ello    world.
word1.rstrip():    h ello world.
word1.strip(): h ello world.

Using replace()

replace() is a powerful function helps us modify a string by targeting a pattern.

string_data.replace(old_str, new_str, limit)

  • Returns a new string that replaces all instances of the old_str with the new_str

  • Limit (optional argument) doesn’t have to be set, if it is set, it will only apply the replace method based on the limit

  • Therefore, this method can either use either 2 or 3 arguments

# Using replace() examples

word = 'Hello World'
test1 = word.replace('l', 'L')
print('test1:', test1)

test2 = word.replace('l', 'o', 2)
print('test2:', test2)

test3 = word.replace('Hello','Goodbye')
print('test3:', test3)

test4 = word.replace(' ', '')
print('test4:', test4)
test1: HeLLo WorLd
test2: Heooo World
test3: Goodbye World
test4: HelloWorld

Using startswith() and endswith()

String methods that can check the start or the end of a string.

string_data.startswith('pattern', start_index, end_index) string_data.endswith('pattern', start_index, end_index)

  • Both of these methods return either True/False

  • It looks for the string pattern argument either at the start or the end.

  • The indexes of start and/or end are both optional

    • they are integer based arguments

# startswith() & endswith() examples

word = 'Hello World'

print("word.startswith('Hell'):", word.startswith('Hell')) # True
print("word.endswith('rld'):", word.endswith('rld')) # True

print("word.endswith('!'):", word.endswith('!')) # False
print("word.startswith('h'):", word.startswith('h')) # False

print("word.startswith(' ',5):", word.startswith(' ',5)) # True
print("word.endswith('or', 2, 9):", word.endswith('or', 2, 9)) # True because word[2:9] → ‘llo wor’
word.startswith('Hell'): True
word.endswith('rld'): True
word.endswith('!'): False
word.startswith('h'): False
word.startswith(' ',5): True
word.endswith('or', 2, 9): True

Items in a Sequence to String

str_data.join(iterable_data)

  • the join() method returns a new string that combines all items in the sequence/iterable_data separated by the str_data provided

  • Each item in the sequence/iterable data must be a string type

# .join() example

new_str = ', '.join(['1', '2', '3']) # new_str is: “1, 2, 3”
new_str2 = ' '.join('helloworld') # new_str2: “h e l l o w o r l d”

print(new_str)
print(new_str2)
1, 2, 3
h e l l o w o r l d

String to a List

There are many ways to convert a string data into a list.

list() function

  • This function allows to convert a string to a list

  • Each individual characters will be separated as a single item in the list

sorted() function

  • This function will sort the given string in ASCII order

  • The function will return a list

  • Each individual character in the string will be an item in the list

Controlled Way to convert a string to a list: split()

str_data.split('pattern', numberOfTime)

  • The split() method separates a string into a list

  • Both arguments are optional, and when they are not specified: they will separate by spaces

    • pattern : this looks for a pattern to separate each items by

    • numberOfTime : this integer sets how many times to separate the string

# String to a List examples

phrase1 = 'Hello World!'
print(list(phrase1))

phrase2 = 'Mr. Park'
print(sorted(phrase2))
print('-'*64)

# Using .split()
result1 = 'hello world'.split()
print('result1:', result1)

result2 = 'a,b,c,d,e'.split(',')
print('result2:', result2)

result3 = '1$2$3$4$5'.split('$',2)
print('result3:', result3)
['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd', '!']
[' ', '.', 'M', 'P', 'a', 'k', 'r', 'r']
----------------------------------------------------------------
result1: ['hello', 'world']
result2: ['a', 'b', 'c', 'd', 'e']
result3: ['1', '2', '3$4$5']
PreviousBasic String MethodsNextTuples & Lists

Last updated 1 year ago

🐍
📦