/usr/lib/python3/dist-packages/xlsxwriter/compatibility.py is in python3-xlsxwriter 0.9.6-0.1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | ###############################################################################
#
# Python 2/3 compatibility functions for XlsxWriter.
#
# Copyright (c), 2013-2016, John McNamara, jmcnamara@cpan.org
#
import sys
from decimal import Decimal
try:
# For compatibility between Python 2 and 3.
from StringIO import StringIO
except ImportError:
from io import StringIO
try:
# For Python 2.6+.
from fractions import Fraction
except ImportError:
Fraction = float
try:
# For Python 2.6+.
from collections import defaultdict
from collections import namedtuple
except ImportError:
# For Python 2.5 support.
from .compat_collections import defaultdict
from .compat_collections import namedtuple
# Types to check in Python 2/3.
if sys.version_info[0] == 2:
int_types = (int, long)
num_types = (float, int, long, Decimal, Fraction)
str_types = basestring
else:
int_types = (int)
num_types = (float, int, Decimal, Fraction)
str_types = str
if sys.version_info < (2, 6, 0):
from StringIO import StringIO as BytesIO
else:
from io import BytesIO as BytesIO
def force_unicode(string):
"""Return string as a native string"""
if sys.version_info[0] == 2:
if isinstance(string, unicode):
return string.encode('utf-8')
return string
|