Python Forum
converting data sizes like: 4k, 32k, 4m, 16m, 1g, etc
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
converting data sizes like: 4k, 32k, 4m, 16m, 1g, etc
#1
i had asked if there was a Python library function to do this, which i could not find. there was no answer, so i had to implement my own. this is not yet tested:
_intsi_powers={'k':1,'m':2,'g':3,'t':4,'p':5,'e':6}
def intsi(digits='0',base=10,multi=1024,empty=None,invalid=None):
    """Convert numbers with suffixes for SI units (metric)."""
    if not digits:
        return empty
    scale=1
    if digits[-1] in _intsi_powers:
        scale=multi**_intsi_powers[digits[-1]]
        digits=digits[:-1]
        if not digits:
            return empty
    try:
        return scale*int(digits,base)
    except ValueError:
        return invalid
Tradition is peer pressure from dead people

What do you call someone who speaks three languages? Trilingual. Two languages? Bilingual. One language? American.
Reply


Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020