#!/usr/bin/env python # # Display a number in base 16. # Author: Yotam Medini yotam.medini@gmail.com -- Created: 2006/February/20 # import sys def base16(n): s = "0" if n > 0: s = "" digits = "0123456789abcdef" while n > 0: D = n % 16 # Get the right most digit cD = digits[D] # The character displaying the digit value s = cD + s # Add it to the left side of s n /= 16 # like: n = n/16, like dropping D from n return s def usage_exit(a0, rc): sys.stderr.write( """ Usage: %s [ ... ] """[1:] % a0) sys.exit(rc) # Begin program if len(sys.argv) < 2: usage_exit(sys.argv[0], 1) for a in sys.argv[1:]: n = int(a) s = base16(n) sys.stdout.write("%d {base10} = %s {base16}\n" % (n, s)) sys.exit(0)