How to define an exabyte constant in Python

1 Answer

0 votes
"""
Python integers have arbitrary precision, so extremely large values
like exabytes fit naturally without overflow.

Exabyte sizes:

    1 EiB = 2**60  = 1,152,921,504,606,846,976 bytes
    1 EB  = 10**18 = 1,000,000,000,000,000,000 bytes

Python style:
  - UPPERCASE names for constants
  - underscores allowed in numeric literals for readability
"""

# Binary exabyte (exbibyte), using a bit shift.
# 1 << 60 = 2**60 bytes.
EXABYTE_EIB = 1 << 60 # not a constant 

# Decimal exabyte (SI), using a readable numeric literal.
EXABYTE_EB = 1_000_000_000_000_000_000

print("1 EiB =", EXABYTE_EIB, "bytes")
print("1 EB  =", EXABYTE_EB,  "bytes")



'''
run:

1 EiB = 1152921504606846976 bytes
1 EB  = 1000000000000000000 bytes

'''

 



answered May 3 by avibootz
...