Understanding Python Strings vs Numbers is essential for beginners as it helps distinguish between text and numerical values in your code.
While numbers are used in calculations, strings represent text and Python identifies them based on whether the value is enclosed in quotes.
Let’s see how Python distinguishes text from numbers in practice.
Python Strings vs Numbers: How Python Differentiates Text from Numbers
A common source of confusion for beginners is understanding how Python tells the difference between numbers and text. The rule is straightforward: any value enclosed in quotation marks is treated as text. For example:- 1234 is treated as an integer.
- ‘1234’ is treated as a string.
print('Learning Python') # Single quotes
print("Learning Python") # Double quotes
print('''Learning Python''') # Triple single quotes
print("""Learning Python""") # Triple double quotes
#Output
Learning Python
Learning Python
Learning Python
Learning Python
Explanation: Each statement creates the same string value. The different quoting styles simply give programmers flexibility when writing text that contains quotation marks. Practical Examples of Python Strings
After understanding how Python Strings are defined and created, it helps to look at how they appear in everyday programming situations.
The following examples show common ways developers work with strings while building Python applications.
Example 1: Assigning and Combining Strings
Before examining the code, consider how names are often built by combining separate pieces of information.
first_name = "John"
last_name = "Doe"
full_name = first_name + " " + last_name
print(full_name) # Output: John Doe
Explanation: In this example, two separate strings are stored in first_name and last_name. The + operator combines them into a single string with a space placed in between. This process is known as concatenation.
This technique is frequently used when generating messages, names, or formatted output.
Example 2: Strings That Contain Numbers
Sometimes strings include digits even though they are not meant to represent numbers.
The next example demonstrates this situation.
phone_number = "9876543210"
print(phone_number)
Explanation: Although the value contains digits, Python stores it as a string because it is enclosed in quotation marks. This is useful for storing information such as phone numbers, postal codes or identification numbers that should not be used in calculations.
Example 3: Including Quotes Inside Strings
Strings sometimes need to contain quotation marks themselves. Python provides several ways to handle this situation cleanly.
Example 3.1: Double Quotes Inside Single
quote1 = 'Welcome to "Python Programming" guide'
print(quote1)
#Output
Welcome to "Python Programming" guide
Explanation: Because the outer quotes are single quotes, Python allows double quotes to appear inside the string without any special formatting.
Example 3.2: Single Quotes Inside Double
quote2 = 'She said, "Hello!"'
print(quote2)
quote3 = "It's a sunny day."
print(quote3)
#Output
She said, "Hello!"
It's a sunny day.
Explanation: Using alternating quote styles helps avoid syntax errors and keeps the code easy to read.
Example 3.3: Triple Quotes for Mixed Quotes
print('''Welcome to "Python Programming" guide''')
print("""Welcome to 'Python Programming' guide""")
#Output
Welcome to "Python Programming" guide
Welcome to 'Python Programming' guide
Explanation: Triple quotes allow both single and double quotes to appear naturally inside the string. They are particularly useful for documentation text or formatted messages.
Example 4: Working with an Empty String
A string can also exist without containing any characters.
The following example shows how Python handles such a situation.
empty = ""
print(len(empty)) # Output: 0
Explanation: The len() function counts how many characters exist inside the string. Since the string is empty, the result is zero.
Key Python String Concepts: Quick Navigation
Before diving into Python string methods, you may want to revisit some essential string topics. Click on any link to jump directly to the section:- Indexing – Access individual characters in a string.
- Slicing – Extract portions of a string using ranges.
- Modifying Strings – Learn how to create new strings from existing ones.
- Formatting Strings – Format text dynamically for display or output.
- Escape Characters – Handle special characters like \n, \t, and quotes.
- Triple Quotes – Work with multi-line strings and mixed quotes.
What Are Python String Methods?
Python offers built-in string methods for tasks like changing case, searching, splitting, replacing, and formatting text.
These are **functions of the str type** and are called using a dot (.) after a string or variable, allowing you to manipulate text easily.
Let’s look at a simple example to see how a Python string method works in practice.
Example: Using a Python String Method
text = "python programming"
result = text.capitalize()
print(result)
Output
Python programming
In this example, the capitalize() method converts the first character of the string to uppercase while keeping the remaining characters unchanged.
Python offers many string methods for performing different text operations. The following quick reference table summarizes commonly used Python string methods along with their syntax, examples, and output.
Quick Reference: Python String Methods
Before diving deeper, here’s a quick reference of commonly used Python string methods that you’ll frequently use while working with text.
| S.No | Method Name | Syntax + Return Value | Quick Example | Output |
|---|---|---|---|---|
| 1 | capitalize() | str.capitalize()Returns: String |
"python".capitalize() |
Python |
| 2 | casefold() | str.casefold()Returns: String |
"HELLO".casefold() |
hello |
| 3 | center() | str.center(width, fillchar)Returns: String |
"Hi".center(6,"-") |
–Hi– |
| 4 | count() | str.count(value,start,end)Returns: Integer |
"banana".count("a") |
3 |
| 5 | endswith() | str.endswith(value,start,end)Returns: Boolean |
"hello.py".endswith(".py") |
True |
| 6 | expandtabs() | str.expandtabs(tabsize)Returns: String |
"a\tb".expandtabs(4) |
a b |
| 7 | find() | str.find(value,start,end)Returns: Integer |
"apple".find("p") |
1 |
| 8 | format() | str.format(values)Returns: String |
"Hello {}".format("John") |
Hello John |
| 9 | index() | str.index(value)Returns: Integer |
"apple".index("p") |
1 |
| 10 | isalnum() | str.isalnum()Returns: Boolean |
"abc123".isalnum() |
True |
| 11 | isidentifier() | str.isidentifier()Returns: Boolean |
"var1".isidentifier() |
True |
| 12 | islower() | str.islower()Returns: Boolean |
"hello".islower() |
True |
| 13 | isnumeric() | str.isnumeric()Returns: Boolean |
"123".isnumeric() |
True |
| 14 | isprintable() | str.isprintable()Returns: Boolean |
"Hello".isprintable() |
True |
| 15 | isspace() | str.isspace()Returns: Boolean |
" ".isspace() |
True |
| 16 | istitle() | str.istitle()Returns: Boolean |
"Hello World".istitle() |
True |
| 17 | join() | str.join(iterable)Returns: String |
"-".join(["a","b","c"]) |
a-b-c |
| 18 | len() | len(string)Returns: Integer |
len("Python") |
6 |
| 19 | lower() | str.lower()Returns: String |
"HELLO".lower() |
hello |
| 20 | lstrip() | str.lstrip(chars)Returns: String |
" hi".lstrip() |
hi |
| 21 | maketrans() | str.maketrans(x,y,z)Returns: Mapping Table |
str.maketrans("a","b") |
{97:98} |
| 22 | max() | max(iterable)Returns: Character |
max("abc") |
c |
| 23 | min() | min(iterable)Returns: Character |
min("abc") |
a |
| 24 | partition() | str.partition(sep)Returns: Tuple |
"a-b-c".partition("-") |
(‘a’,’-‘,’b-c’) |
| 25 | replace() | str.replace(old,new,count)Returns: String |
"apple".replace("p","x") |
axxle |
| 26 | rfind() | str.rfind(value)Returns: Integer |
"banana".rfind("a") |
5 |
| 27 | rpartition() | str.rpartition(sep)Returns: Tuple |
"a-b-c".rpartition("-") |
(‘a-b’,’-‘,’c’) |
| 28 | rsplit() | str.rsplit(sep,maxsplit)Returns: List |
"a-b-c".rsplit("-",1) |
[‘a-b’,’c’] |
| 29 | rstrip() | str.rstrip(chars)Returns: String |
"hi ".rstrip() |
hi |
| 30 | split() | str.split(sep,maxsplit)Returns: List |
"a,b,c".split(",") |
[‘a’,’b’,’c’] |
| 31 | splitlines() | str.splitlines()Returns: List |
"a\nb".splitlines() |
[‘a’,’b’] |
| 32 | startswith() | str.startswith(value)Returns: Boolean |
"hello".startswith("he") |
True |
| 33 | strip() | str.strip(chars)Returns: String |
" hi ".strip() |
hi |
| 34 | swapcase() | str.swapcase()Returns: String |
"Hello".swapcase() |
hELLO |
| 35 | title() | str.title()Returns: String |
"hello world".title() |
Hello World |
Key Takeaways: Python Strings
After exploring Python strings, here’s a quick summary of the most important points to remember:
- Python Strings are sequences of characters stored as text.
- Anything enclosed in quotes is automatically treated as a string.
- Single, double, and triple quotes give flexible ways to define strings.
- Strings are immutable, meaning their content cannot be changed directly.
- Python Strings are widely used in real-world applications to store, manipulate, and display text.