mirror of
https://github.com/gryf/ebook-converter.git
synced 2026-02-24 11:15:50 +01:00
37 lines
737 B
Python
37 lines
737 B
Python
import importlib
|
|
|
|
|
|
def as_bytes(x, encoding='utf-8'):
|
|
if isinstance(x, str):
|
|
return x.encode(encoding)
|
|
if isinstance(x, bytes):
|
|
return x
|
|
if isinstance(x, bytearray):
|
|
return bytes(x)
|
|
if isinstance(x, memoryview):
|
|
return x.tobytes()
|
|
return str(x).encode(encoding)
|
|
|
|
|
|
def error_message(exc):
|
|
args = getattr(exc, 'args', None)
|
|
if args and isinstance(args[0], str):
|
|
return args[0]
|
|
return str(exc)
|
|
|
|
|
|
def exec_path(path, ctx=None):
|
|
ctx = ctx or {}
|
|
with open(path, 'rb') as f:
|
|
code = f.read()
|
|
code = compile(code, f.name, 'exec')
|
|
exec(code, ctx)
|
|
|
|
|
|
def cmp(a, b):
|
|
return (a > b) - (a < b)
|
|
|
|
|
|
def reload(module):
|
|
return importlib.reload(module)
|