How to Check if a Number is Negative in Python: A Beginner’s Guide


Python is a versatile programming language that is commonly used for a wide range of applications. One common task in programming is checking if a number is negative or positive. In this beginner’s guide, we will explore the different ways to check if a number is negative in Python.

Method 1: Using the Comparison Operator

To check if a number is negative in Python, you can use the comparison operator “<” to compare the number with 0. If the number is less than 0, it means that the number is negative. Here’s an example code snippet that demonstrates this method:

num = -5

if num < 0:
    print("The number is negative.")
    print("The number is non-negative.")

In this code, we assign the value -5 to the variable `num`. Then we use an `if` statement to compare `num` with 0 using the `<` operator. If `num` is less than 0, which it is in this case, then we print “The number is negative.” Otherwise, we print “The number is non-negative.” You can modify this code to check if any given number is negative by replacing `-5` with the number you want to check. This method is simple and straightforward, but it only works for checking if a single number is negative. If you need to check if multiple numbers are negative, you would need to repeat this code for each number. In such cases, Method 2 may be more efficient.

Method 2: Using the math.copysign() Function

Another method to check if a number is negative in Python is by using the `math.copysign()` function. This function returns a float with the magnitude of `x` and the sign of `y`.

To use this function to check if a number is negative, we can pass the number as the first argument and -1 as the second argument. If the number is negative, the function will return a negative value, otherwise, it will return a positive value.

Here’s an example:

import math

num = -5
if math.copysign(1, num) == -1:
    print("The number is negative")
    print("The number is not negative")

In this example, we import the `math` module and assign `-5` to the variable `num`. We then check if `math.copysign(1, num)` is equal to `-1`. If it is, we print “The number is negative”, otherwise we print “The number is not negative”.

Note that we pass `1` as the first argument to `math.copysign()` because we want to get a float with the magnitude of `num` and a sign of either `-1` or `1`. The sign returned by `math.copysign()` will be `-1` if the number is negative and `1` if it’s positive or zero.

Using `math.copysign()` can be more efficient than using conditional statements when checking if a large number of values are negative.

Method 3: Using if-else Statements

To check if a number is negative using if-else statements in Python, we can use the following code:

num = float(input("Enter a number: "))
if num < 0:
    print("The number is negative.")
    print("The number is not negative.")

Let’s break down this code. First, we use the `input()` function to prompt the user to enter a number. We convert the input to a float using the `float()` function, as we want to be able to handle decimal numbers as well.

Next, we use an if-else statement to check whether the input number is less than zero. If it is less than zero, we print a message saying that the number is negative. Otherwise, we print a message saying that the number is not negative.

It is important to note that in Python, indentation matters. The code inside the if and else blocks are indented by four spaces. This tells Python that these lines of code are part of the if-else statement and should only be executed if the condition specified in the if statement is true.

Using if-else statements is a simple and straightforward way to check if a number is negative in Python. It is also easy to understand for beginners who are just starting with programming.


In conclusion, checking if a number is negative in Python is a simple task that can be accomplished using the comparison operator “<“. By comparing the number to 0, we can determine if it is negative or not. We can also use the built-in function “math.copysign()” to extract the sign of a number and compare it with -1 to check if it is negative. However, this method may not be as efficient as using the comparison operator. It is important to remember that in Python, numbers can be of different types such as integers, floats, and complex numbers. Therefore, when checking for negativity, we must ensure that we are working with the correct data type. By mastering this concept, you will be able to write programs that handle negative numbers effectively and efficiently. Interested in learning more? Check out our Introduction to Python course!

How to Become a Data Scientist PDF

Your FREE Guide to Become a Data Scientist

Discover the path to becoming a data scientist with our comprehensive FREE guide! Unlock your potential in this in-demand field and access valuable resources to kickstart your journey.

Don’t wait, download now and transform your career!

Pierian Training
Pierian Training
Pierian Training is a leading provider of high-quality technology training, with a focus on data science and cloud computing. Pierian Training offers live instructor-led training, self-paced online video courses, and private group and cohort training programs to support enterprises looking to upskill their employees.

You May Also Like

Data Science, Tutorials

Guide to NLTK – Natural Language Toolkit for Python

Introduction Natural Language Processing (NLP) lies at the heart of countless applications we use every day, from voice assistants to spam filters and machine translation. It allows machines to understand, interpret, and generate human language, bridging the gap between humans and computers. Within the vast landscape of NLP tools and techniques, the Natural Language Toolkit […]

Machine Learning, Tutorials

GridSearchCV with Scikit-Learn and Python

Introduction In the world of machine learning, finding the optimal set of hyperparameters for a model can significantly impact its performance and accuracy. However, searching through all possible combinations manually can be an incredibly time-consuming and error-prone process. This is where GridSearchCV, a powerful tool provided by Scikit-Learn library in Python, comes to the rescue. […]

Python Basics, Tutorials

Plotting Time Series in Python: A Complete Guide

Introduction Time series data is a type of data that is collected over time at regular intervals. It can be used to analyze trends, patterns, and behaviors over time. In order to effectively analyze time series data, it is important to visualize it in a way that is easy to understand. This is where plotting […]