Working with Numbers & Strings in Python

Working with Numbers & Strings in Python

Don't forget the Basics ๐Ÿ˜ฆ


5 min read

Python is one of the most popular coding languages available and is great as a starting point in your learning journey. It can be used for a range of things, such as web and internet development, software development application, network programming, and 3D graphics... (

While learning, we end up getting stuck in small bugs that can take more time to solve, whereas we could have solved it quickly if we could only remember the basics.

So, this is a series of Basics Python tips to remember whenever we work with numbers and strings. You can also use this article as a reference somehow while coding...


Python Numbers

There are three numeric types we use in Python:

  • int: or integer, is a whole number without decimals.
x = 1245
y = -789

  • float: or Floating, a number with one or more decimals.
x = 12.45
y = 42E5

  • complex: as studied in high school, is a number written with a "j" as the imaginary part.
x = 3 + 2j
y = -15j


Numbers Types Conversion

To convert numbers from one type (from the three) to another, we used methods.

In Python, a method is a function that is available for a given object because of the object's type. So, You can convert from one type to another with the int(), float(), and complex() methods:

x = 4    # int number
y = 0.8  # float number
z = 4j   # complex number

# from int to float:
a = float(x)

# from float to int:
b = int(y)

# from int to complex:
c = complex(x)



Let's Build a Simple Calculator

# Python Simple calculator

# Addition Function
def add(x, y):
    return x + y

# Substraction Function
def subtract(x, y):
    return x - y

# Multiplication Function
def multiply(x, y):
    return x * y

# Division Function
def divide(x, y):
    return x / y

def calculate(first_number, second_number, operator):
    if operator == "+":
        answer = add(first_number, second_number)
        return answer

    elif operator == "-":
        answer = subtract(first_number, second_number)
        return answer

    elif operator == "/":
        answer = divide(first_number, second_number)
        return answer
    elif operator == "*" or operator == "x":
        answer = subtract(first_number, second_number)
        return answer
        return "Invalid"

num1 = int(input("Enter the first number: "))
num2 = int(input("Enter the second number: "))
operator = input("Enter the Operator: ")

print(f"{num1} {operator} {num2} = {calculate(num1, num2, operator)}")

Python Strings

Strings in python are surrounded by:

  • Single quotation marks

  • Double quotation marks


Use a Variable to save the String

The assignment sign is made of = (equal sign).

name = "Kennedy"
role = "Software Engineer"

We can also use Multiline Strings

poem = """Your face is the grave of your nose
your face is the grave of your ears
your face is the grave of your face
once again your face overflows uncontrollably."""


Accessing a Character of the String

We can think of strings like an array made of characters. For example, the word "Elon Musk" is made of "E", "l", "o", "n", " ", "M", "u", "s" and "k" (Notice the space is also counted as a character).

The first character is counted at index 0 (not 1).

greeting = "Hello, World!"
print(greeting[1]) #prints "e"

Working with Strings

Checking the String Length

use the len() function

name = "Kennedy"
length_of_name = len(name)


Checking an existing string or character in a string

Use the in keyword.

sentence = "Kennedy is a python programmer"
if "python" in a sentence:
  print("Yes, 'python' is present.")

Most Common String Methods

  • capitalize() method converts the first character of a string to an uppercase letter and lowercases all other characters.
name = "python"
  • casefold() method Converts string into lower case.
name = "PYTHON"
  • upper() method converts all the characters into Uppercase.
name = "python"
  • lower() method converts all the characters into Lowercase.
name = "PYTHON"
  • len() method used to count the total number of characters in a string.
name = "python"
print( len(name) )
  • find() searches the string for a specified value and returns the position of where it was found.
sentence = "python is great"
print( sentence.find('great') )
  • replace() is used to replace a string with another.
sentence = "python is great"
new_sentence = sentence.replace('great', 'awesome') 
  • str() is used for string conversion
ten = str(10)
print(ten) #converts 10 to '10'

Let's work on a Small Project

- Arrange string characters such that lowercase letters should come first

Initial Code

noun = PrOgRamMinG

# Expected Output : rgaminPORMG


noun = "PrOgRamMinG"

# Let's create a Function to handle it

def arrange_string(my_string):
    print('Original String:', my_string)
    lower = []
    upper = []

    #Let's iterate and convert
    for char in my_string:
        if char.islower():
            # add lowercase characters to lower list
            # add uppercase characters to lower list

    # Join both list
    sorted_str = ''.join(lower + upper)
    print('Result:', sorted_str)

# Now, let's call execute the function we just created! 

# Output: 
# Original String: PrOgRamMinG
# Result: rgaminPORMG

Resources for more Details:


Thanks for reading this article, many others are coming very soon, Feel free to subscribe ๐Ÿค™.

๐ŸŒŽ Let's connect

Want to start blogging? ๐Ÿ”ฅJoin NOW!