Python snippet: ordinalth(n)
8th October 2003
Blogged so I don’t lose it (blogging as external memory):
def ordinalth(n):
""" 1 => 1st, 2 => 2nd etc """
last = n - n / 10 * 10
if last == 1:
return '%dst' % n
if last == 2:
return '%dnd' % n
if last == 3:
return '%drd' % n
return '%dth' % n
Update: See comments for improved version.
More recent articles
- Hello Python 3.15, goodbye 3.10, and now I can use 3.11 - 12th October 2026
- A new feature for my blog, built using my voice - 9th October 2026
- Claude Haiku 5.5 - 7th October 2026
- We're going to need default hard budget caps on pretty much everything - 3rd October 2026