Python Strings – Free Tutorials
Hello, world! Welcome to our comprehensive guide on Python strings. Whether you’re just starting your coding journey or you’re a seasoned pro looking to brush up on your skills, you’ve come to the right place. We’ll be exploring everything from the basics of Python strings to more advanced topics. So, buckle up and let’s dive in!
Table of Contents
Basics of Python Strings
In Python, a string is a sequence of characters. It’s as simple as that! You can create a string by enclosing characters in either single quotes (‘ ‘) or double quotes (” “). For example:
greeting = "Hello, World!"
print(greeting) # Outputs: Hello, World!
PythonIn this example, greeting
is a string variable that holds the text “Hello, World!”. When we print greeting
, it displays the text stored in the variable.
Python strings are indexed, with the first character having index 0. For instance, in the string “Python”, the character “P” is at index 0, “y” is at index 1, and so on. You can access individual characters of a string using their index. Here’s how:
language = "Python"
print(language[0]) # Outputs: P
PythonYou can also concatenate strings using the +
operator, and repeat strings using the *
operator. Here’s an example:
str1 = "Hello"
str2 = "World"
print(str1 + str2) # Outputs: HelloWorld
print(str1 * 3) # Outputs: HelloHelloHello
PythonPython String Methods
Python provides a set of built-in methods that you can use on strings. These methods make it easy to perform common tasks, and they’re a big part of why Python is such a joy to work with. Let’s take a look at some of the most commonly used ones.
The len()
function returns the length of a string:
greeting = "Hello, World!"
print(len(greeting)) # Outputs: 13
PythonThe str()
function converts a specified value into a string:
number = 123
print(str(number)) # Outputs: '123'
PythonThe split()
method splits a string into a list where each word is a list item:
sentence = "This is a sentence."
print(sentence.split()) # Outputs: ['This', 'is', 'a', 'sentence.']
PythonThe replace()
method replaces a specified phrase with another specified phrase:
text = "Hello, World!"
new_text = text.replace("World", "Universe")
print(new_text) # Outputs: Hello, Universe!
PythonThe find()
method finds the first occurrence of the specified value:
text = "Hello, World!"
print(text.find("World")) # Outputs: 7
PythonThe count()
method returns the number of times a specified value occurs in a string:
text = "Hello, World!"
print(text.count("o")) # Outputs: 2
PythonThe upper()
method converts a string into upper case:
text = "Hello, World!"
print(text.upper()) # Outputs: HELLO, WORLD!
PythonThe lower()
method converts a string into lower case:
text = "Hello, World!"
print(text.lower()) # Outputs: hello, world!
PythonString Indexing and Slicing
In Python, strings are indexed with the first character having index 0. Unlike many other languages, Python also supports negative indexing. With negative indexing, -1 refers to the last character, -2 refers to the second last character, and so on.
Let’s take a look at an example:
s = "Hello, World!"
print(s[0]) # Outputs: H
print(s[-1]) # Outputs: !
PythonSlicing is another powerful feature provided by Python. It allows us to extract a part of the string. Here’s how it works:
s = "Hello, World!"
print(s[0:5]) # Outputs: Hello
print(s[7:]) # Outputs: World!
PythonIn the first slice, we’re extracting characters from index 0 to 4 (5 is not included). In the second slice, we’re extracting characters from index 7 till the end of the string.
String Methods
Python provides a plethora of built-in methods for string manipulation. Some of the commonly used ones are lower()
, upper()
, split()
, replace()
, and strip()
. Let’s see them in action:
s = "Hello, World!"
print(s.lower()) # Outputs: hello, world!
print(s.upper()) # Outputs: HELLO, WORLD!
print(s.split(",")) # Outputs: ['Hello', ' World!']
print(s.replace("World", "Python")) # Outputs: Hello, Python!
print(s.strip("!")) # Outputs: Hello, World
PythonThese methods are extremely handy when it comes to processing and cleaning text data in Python.
Frequently Asked Questions (FAQ)
Q: What is a string in Python?
In Python, a string is a sequence of characters. It can be created by enclosing characters in either single quotes (‘ ‘) or double quotes (” “). For example,
greeting = "Hello, World!"
is a string.How do you access values in a string in Python?
You can access individual characters of a string using their index. For example, in the string “Python”, the character “P” is at index 0, “y” is at index 1, and so on. You can access these characters like this:
print(language[0]) # Outputs: P
.How do you find the length of a string in Python?
You can use the
len()
function to find the length of a string in Python. For example,print(len("Hello, World!")) # Outputs: 13
How do you convert a number to a string in Python?
You can use the
str()
function to convert a number to a string in Python. For example,print(str(123)) # Outputs: '123'
.How do you concatenate strings in Python?
You can concatenate strings using the
+
operator. For example,print("Hello" + "World") # Outputs: HelloWorld
.
Related tutorials
- Python Data Structures Overview
- Python Lists
- Python Tuples
- Python Sets
- Python Dictionaries
- Python Strings
- Python Arrays
- Python Stack
- Python Queue
- Python Linked List
- Python Trees
- Python Heaps
- Python Hashing
- Python Graphs
- Python Matrix
- Python Algorithms
- Python Recursion
- Python Time Complexity
Dr. Mehedi Hasan is a seasoned semiconductor professional, academic and web-designer with over a decade of experience in digital system design and verification as well as web development. Currently a Senior Engineer at AMD in Markham, Ontario, he plays a key role in the development and verification of cutting-edge chip technologies, earning multiple Spotlight Awards for his contributions.
Dr. Hasan holds a Ph.D. in Electrical and Computer Engineering from the University of Saskatchewan and has served in both academia and industry across Canada, Bangladesh, Malaysia, and Saudi Arabia. His expertise spans web-development, UVM-based SystemVerilog verification, static timing analysis (STA), RTL design, and scripting in multiple languages including Python, TCL, Shell as well as web-development tools including HTML, CSS, Javascript.
Passionate about knowledge sharing and education, Dr. Hasan has also worked as an Assistant Professor in Ontario, Canada (at Lakehead University) and Bangladesh University. He is committed to building accessible learning environments and is the founder of SkillSeminary, a platform focused on simplifying complex tech concepts for learners worldwide.
When he's not immersed in chip verification or educational projects, Dr. Hasan enjoys mentoring, researching system development, and promoting open tech education.