In Python, type aliases are used to create alternative names for existing data types. They are especially helpful for making your code more readable and for documenting the intent of certain variables or function parameters. Type aliases are introduced using the typing
module, which provides various tools to work with types.
A type alias is defined by assigning the type to the alias:
Vector = List[float]
Here’s the correct way to define a type alias in Python:
from typing import List
# Define a type alias for a list of floats
Vector = List[float]
# Usage
vector1: Vector = [1.0, 2.0, 3.0]
vector2: Vector = [4.0, 5.0, 6.0]
print(vector1) # Output: [1.0, 2.0, 3.0]
print(vector2) # Output: [4.0, 5.0, 6.0]
In this example, we define the Vector
type alias by directly assigning List[float]
to it. The Vector
type alias can now be used wherever we would use List[float]
, making the code more readable and expressive.
Python type alias example
You can use the NewType
function from the typing
module to create a type alias. Here’s an example using NewType
:
from typing import NewType
# Define a type alias for a string representing a person's name
PersonName = NewType('PersonName', str)
# Use the type alias in function parameters
def greet_person(name: PersonName) -> str:
return f"Hello, {name}!"
# Usage
name1 = PersonName("Alice")
name2 = PersonName("Bob")
print(greet_person(name1))
print(greet_person(name2))
Output:
In this example, we create the PersonName
type alias using NewType
. The first argument of NewType
is the name of the new type ('PersonName'
), and the second argument is the existing type it is based on (str
).
Note: IDE: PyCharm 2021.3.3 (Community Edition)
Windows 10
Python 3.10.1
All Python Examples are in Python 3, so Maybe its different from python 2 or upgraded versions.