Ordinal suffix for a number
Return 1st, 2nd, 3rd, 11th, and so on for an integer.
18th August 2026
from typing import Dict
def ordinal(num: int) -> str:
suffixes: Dict[int, str] = {1: 'st', 2: 'nd', 3: 'rd'}
if 10 <= num % 100 <= 20:
suffix = 'th'
else:
suffix = suffixes.get(num % 10, 'th')
return f"{num}{suffix}"