diff --git a/python/mxnet/onnx/mx2onnx/_export_onnx.py b/python/mxnet/onnx/mx2onnx/_export_onnx.py index 20bf2fe7f980..7c96b2896a49 100644 --- a/python/mxnet/onnx/mx2onnx/_export_onnx.py +++ b/python/mxnet/onnx/mx2onnx/_export_onnx.py @@ -46,6 +46,7 @@ # coding: utf-8 # pylint: disable=invalid-name,too-many-locals,no-self-use,too-many-arguments, # pylint: disable=maybe-no-member,too-many-nested-blocks,logging-not-lazy +# pylint: disable=cell-var-from-loop """MXNet to ONNX graph converter functions""" import logging import json @@ -393,15 +394,14 @@ def __init__(self, name, dtype): if not node_output_names: node_output_names = [converted[-1].name] # process node outputs (sort by output index) - def str2int(s): - import re - i = re.search(r'\d{0,2}$', s).group() - if i == '': - return 0 + def str2int(s, name): + l = len(name) + if len(s) == l: + return -1 else: - return int(i) + return int(s[l:]) - sorted(node_output_names, key=str2int) + node_output_names = sorted(node_output_names, key=lambda x: str2int(x, name)) # match the output names to output dtypes if dtypes is not None: