docs: def byte_str2(nBytes, precision=2):
      """
      Automatically chooses relevant unit (KB, MB, or GB) for displaying some
      number of bytes.
  
      Args:
          nBytes (int):
  
      Returns:
          str:
  
      CommandLine:
          python -m utool.util_str --exec-byte_str2
  
      Example:
          >>> # ENABLE_DOCTEST
          >>> from utool.util_str import *  # NOQA
          >>> import utool as ut
          >>> nBytes_list = [1, 100, 1024,  1048576, 1073741824, 1099511627776]
          >>> result = ut.list_str(list(map(byte_str2, nBytes_list)), nl=False)
          >>> print(result)
          ['0.00 KB', '0.10 KB', '1.00 KB', '1.00 MB', '1.00 GB', '1.00 TB']
      """
      nAbsBytes = abs(nBytes)
      if nAbsBytes < 2.0 ** 10:
          return byte_str(nBytes, 'KB', precision=precision)
      if nAbsBytes < 2.0 ** 20:
          return byte_str(nBytes, 'KB', precision=precision)
      if nAbsBytes < 2.0 ** 30:
          return byte_str(nBytes, 'MB', precision=precision)
      if nAbsBytes < 2.0 ** 40:
          return byte_str(nBytes, 'GB', precision=precision)
      else:
          return byte_str(nBytes, 'TB', precision=precision)