Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: utf-8 -*-
- # Filename ordinal_numbers.py
- # Author xxx <xxx@xxx.xxx>
- # First edited 13-01-2011 14:17
- # Last edited 13-01-2011 14:30
- import argparse
- ordinals = {0:"th", 1:"st", 2:"nd", 3:"rd", 4:"th",
- 5:"th", 6:"th", 7:"th", 8:"th", 9:"th"}
- def get_ten_digit(n):
- return (n / 10) % 10
- def get_one_digit(n):
- return n % 10
- def convert_to_ordinal(n):
- negative = False
- if n < 0:
- n = abs(n)
- negative = True
- if get_ten_digit(n) == 1:
- if negative:
- return "%dth" % (-n)
- else:
- return "%dth" % n
- elif get_ten_digit(n) != 1:
- if negative:
- return "%d%s" % (-n, ordinals[get_one_digit(n)])
- else:
- return "%d%s" % (n, ordinals[get_one_digit(n)])
- def main():
- parser = argparse.ArgumentParser()
- parser.add_argument('number', metavar='N', type=int, default=None,
- help='Set number to convert to ordinal')
- args = parser.parse_args()
- print convert_to_ordinal(args.number)
- if __name__ == '__main__':
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement