123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- # -*- coding: utf-8 -*-
- # Compat
- import sys
- py2 = sys.version_info.major == 2
- py27 = sys.version_info[0:2] == (2, 7)
- py3 = sys.version_info.major == 3
- py34 = sys.version_info[0:2] == (3, 4)
- py35 = sys.version_info[0:2] == (3, 5)
- if py3:
- class TeaConverter(object):
- unicode = str
- basestring = (str, bytes)
- number = (int, float)
- @staticmethod
- def to_unicode(s, encoding='utf-8'):
- if s is None:
- return s
- if isinstance(s, bytes):
- return s.decode(encoding)
- else:
- return str(s)
- @staticmethod
- def to_str(s, encoding='utf-8'):
- if s is None:
- return s
- if isinstance(s, bytes):
- return s.decode(encoding)
- else:
- return str(s)
- @staticmethod
- def to_bytes(s, encoding='utf-8'):
- if s is None or isinstance(s, bytes):
- return s
- if isinstance(s, str):
- return s.encode(encoding)
- else:
- return str(s).encode(encoding)
- @staticmethod
- def to_string(s, encoding='utf-8'):
- if s is None:
- return s
- if isinstance(s, bytes):
- return s.decode(encoding)
- else:
- return str(s)
- else:
- class TeaConverter(object):
- unicode = unicode
- basestring = basestring
- number = (int, float, long)
- @staticmethod
- def to_unicode(s, encoding='utf-8'):
- if s is None:
- return s
- if isinstance(s, str):
- return s.decode(encoding)
- else:
- return unicode(s)
- @staticmethod
- def to_str(s, encoding='utf-8'):
- if s is None:
- return s
- if isinstance(s, unicode):
- return s.encode(encoding)
- else:
- return str(s)
- @staticmethod
- def to_bytes(s, encoding='utf-8'):
- if s is None:
- return s
- if isinstance(s, unicode):
- return s.encode(encoding)
- else:
- return str(s)
- @staticmethod
- def to_string(s, encoding='utf-8'):
- if s is None:
- return s
- if isinstance(s, str):
- return s.decode(encoding)
- else:
- return unicode(s)
|