79 lines
1.6 KiB
Python
79 lines
1.6 KiB
Python
|
# coding=utf8
|
|||
|
|
|||
|
import pprint
|
|||
|
import six
|
|||
|
|
|||
|
|
|||
|
class MyPrettyPrinter(pprint.PrettyPrinter):
|
|||
|
def format(self, object, context, maxlevels, level):
|
|||
|
if six.PY2:
|
|||
|
if isinstance(object, unicode):
|
|||
|
return (object.encode("utf8"), True, False)
|
|||
|
return pprint.PrettyPrinter.format(self, object, context, maxlevels, level)
|
|||
|
|
|||
|
|
|||
|
def remove_space(s):
|
|||
|
return s.replace(u" ", "").strip()
|
|||
|
|
|||
|
|
|||
|
def minguo2ce(minguo):
|
|||
|
pattern = "(\d+)\.([ 0-9]{1,2})\.([ 0-9]{1,2})"
|
|||
|
s = re.search(pattern, minguo)
|
|||
|
if s:
|
|||
|
yy = int(s.group(1)) + 1911
|
|||
|
|
|||
|
try:
|
|||
|
mm = int(s.group(2))
|
|||
|
except:
|
|||
|
mm = 1
|
|||
|
|
|||
|
try:
|
|||
|
dd = int(s.group(3))
|
|||
|
except:
|
|||
|
dd = 1
|
|||
|
|
|||
|
return date(yy, mm, dd)
|
|||
|
|
|||
|
pattern = "(\d+)/([ 0-9]{1,2})/([ 0-9]{1,2})"
|
|||
|
s = re.search(pattern, minguo)
|
|||
|
if s:
|
|||
|
yy = int(s.group(1)) + 1911
|
|||
|
|
|||
|
try:
|
|||
|
mm = int(s.group(2))
|
|||
|
except:
|
|||
|
mm = 1
|
|||
|
|
|||
|
try:
|
|||
|
dd = int(s.group(3))
|
|||
|
except:
|
|||
|
dd = 1
|
|||
|
|
|||
|
return date(yy, mm, dd)
|
|||
|
|
|||
|
return
|
|||
|
|
|||
|
|
|||
|
def xstr(s):
|
|||
|
return "" if s is None else s
|
|||
|
|
|||
|
|
|||
|
def jprint(a):
|
|||
|
import json
|
|||
|
|
|||
|
print(json.dumps(a, ensure_ascii=False, indent=4, sort_keys=True))
|
|||
|
|
|||
|
|
|||
|
def PrintException():
|
|||
|
exc_type, exc_obj, tb = sys.exc_info()
|
|||
|
f = tb.tb_frame
|
|||
|
lineno = tb.tb_lineno
|
|||
|
filename = f.f_code.co_filename
|
|||
|
linecache.checkcache(filename)
|
|||
|
line = linecache.getline(filename, lineno, f.f_globals)
|
|||
|
print(
|
|||
|
'EXCEPTION IN ({}, LINE {} "{}"): {}'.format(
|
|||
|
filename, lineno, line.strip(), exc_obj
|
|||
|
)
|
|||
|
)
|