Basic Data Types in Python

This text is part of a Real Python tutorial by Leodanis Pozo Ramos.


Python data types are fundamental to the language, enabling you to represent various kinds of data. These data types form the core of most Python programs, allowing you to handle numeric, textual, and logical data efficiently.

Understanding Python data types involves recognizing their roles and how to work with them. You can create and manipulate these data types using built-in functions and methods, and convert between them when necessary.

By the end of this lesson, you’ll understand that:

  • Python’s basic data types include int, float, str, and bool.
  • You can check a variable’s type using the type() function in Python.
  • You can convert data types in Python using functions like int(), float(), str(), and others.

In this lesson, you’ll learn the basics of each data type.

Python’s Basic Data Types

Python has several built-in data types that you can use out of the box because they’re built into the language. From all the built-in types available, you’ll find that a few of them represent basic objects, such as numbers, strings and characters, bytes, and Boolean values.

Note that the term basic refers to objects that can represent data you typically find in real life, such as numbers and text. It doesn’t include composite data types, such as lists, tuples, dictionaries, and others.

In Python, the built-in data types that you can consider basic are the following:

Class Basic Type
int Integer numbers
float Floating-point numbers
complex Complex numbers
str Strings and characters
bytes, bytearray Bytes
bool Boolean values

In the following sections, you’ll learn the basics of how to create, use, and work with some of these built-in data types in Python.

Integer Numbers

Integer numbers are whole numbers with no decimal places. They can be positive or negative numbers. For example, 0, 1, 2, 3, -1, -2, and -3 are all integers. Usually, you’ll use positive integer numbers to count things.

In Python, the integer data type is represented by the int class:

Language: Python
>>> type(42)
<class 'int'>

In the following sections, you’ll learn the basics of how to create and work with integer numbers in Python.

Integer Literals

When you need to use integer numbers in your code, you’ll often use integer literals directly. Literals are constant values of built-in types spelled out literally, such as integers. Python provides a few different ways to create integer literals. The most common way is to use base-ten literals that look the same as integers look in math:

Language: Python
>>> 42
42

>>> -84
-84

>>> 0
0

Here, you have three integer numbers: a positive one, a negative one, and zero. Note that to create negative integers, you need to prepend the minus sign (-) to the number.

Python has no limit to how long an integer value can be. The only constraint is the amount of memory your system has. Beyond that, an integer can be as long as you need:

Language: Python
>>> 123123123123123123123123123123123123123123123123 + 1
123123123123123123123123123123123123123123123124

For a really, really long integer, you can get a ValueError when converting it to a string:

Locked learning resources

Join us and get access to thousands of tutorials and a community of expert Pythonistas.

Unlock This Lesson

Already a member? Sign-In

Locked learning resources

The full lesson is for members only. Join us and get access to thousands of tutorials and a community of expert Pythonistas.

Unlock This Lesson

Already a member? Sign-In

You must own this product to join the conversation.