Python Data Types

Understanding Python Data Types with Examples

Python is a dynamically typed language, meaning you don't need to declare the type of a variable when you create it. The type is automatically assigned based on the value you provide. However, understanding data types is crucial for efficient coding and avoiding bugs in your programs. In this blog, we’ll explore the various data types in Python with examples.

1. Numeric Data Types

Python supports several numeric types, including integers, floating-point numbers, and complex numbers.

  • Integers (int): These are whole numbers without a fractional part.

age = 25

print(type(age))  # Output: <class 'int'>

 

  • Floating-point (float): These are numbers with a fractional part.

height = 5.9

print(type(height))  # Output: <class 'float'>

 

  • Complex numbers (complex): These consist of a real part and an imaginary part.

complex_number = 3 + 4j

print(type(complex_number))  # Output: <class 'complex'>

 

2. Sequence Data Types

Python provides several types to represent sequences of data.

  • Strings (str): Strings are immutable sequences of characters.

name = "Deepak"

print(type(name))  # Output: <class 'str'>

 

  • Lists (list): Lists are mutable sequences, typically used to store collections of homogeneous items.

fruits = ["apple", "banana", "cherry"]

print(type(fruits))  # Output: <class 'list'>

 

  • Tuples (tuple): Tuples are immutable sequences, typically used to store collections of heterogeneous items.

coordinates = (10, 20)

print(type(coordinates))  # Output: <class 'tuple'>

 

3. Mapping Data Type

  • Dictionaries (dict): Dictionaries are unordered collections of key-value pairs. Keys must be unique and immutable.

person = {"name": "Deepak", "age": 41}

print(type(person))  # Output: <class 'dict'>

 

4. Set Data Types

Sets are unordered collections of unique elements.

  • Set (set): A set is mutable and does not allow duplicate elements.

unique_numbers = {1, 2, 3, 4, 4, 5}

print(unique_numbers)  # Output: {1, 2, 3, 4, 5}

print(type(unique_numbers))  # Output: <class 'set'>

 

  • Frozenset (frozenset): An immutable version of a set.

frozen_numbers = frozenset([1, 2, 3, 4, 4, 5])

print(frozen_numbers)  # Output: frozenset({1, 2, 3, 4, 5})

print(type(frozen_numbers))  # Output: <class 'frozenset'>

 

5. Boolean Data Type

  • Boolean (bool): Represents one of two values: True or False.

is_adult = True

print(type(is_adult))  # Output: <class 'bool'>

 

6. Binary Data Types

Python provides types to handle binary data.

  • Bytes (bytes): Immutable sequences of bytes.

byte_data = b"Hello"

print(type(byte_data))  # Output: <class 'bytes'>

 

  • Bytearray (bytearray): Mutable sequences of bytes.

mutable_byte_data = bytearray(b"Hello")

print(type(mutable_byte_data))  # Output: <class 'bytearray'>

 

  • Memoryview (memoryview): Allows you to access the internal data of an object that supports the buffer protocol without copying.

mv = memoryview(byte_data)

print(type(mv))  # Output: <class 'memoryview'>

 

7. None Type

  • NoneType (None): Represents the absence of a value.

result = None

print(type(result))  # Output: <class 'NoneType'>

 

Final Remarks

Understanding Python data types is essential for writing effective code. Each type serves a specific purpose, and knowing when to use which type can significantly improve the performance and readability of your programs. This is just fundamental information about the data types. In next blogs you will study every data type in detail.

Happy coding!