1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
RAW_ENCODING = "utf-8"
ENCODING_ERROR_HANDLING = "replace"
def forceunicode(name):
""" returns `name` as unicode, even if it wasn't before """
return name if isinstance(name, unicode) else name.decode(RAW_ENCODING, ENCODING_ERROR_HANDLING)
def forcestr(name):
""" returns `name` as string, even if it wasn't before """
return name if isinstance(name, str) else name.encode(RAW_ENCODING, ENCODING_ERROR_HANDLING)
def tryencode(name):
""" returns `name` as encoded string if it was unicode before """
return name.encode(RAW_ENCODING, ENCODING_ERROR_HANDLING) if isinstance(name, unicode) else name
|