code: def split_qexpr_parts(e):
      """Split an expression into Expr and noncommutative QExpr parts."""
      expr_part = []
      qexpr_part = []
      for arg in e.args:
          if not isinstance(arg, QExpr):
              expr_part.append(arg)
          else:
              qexpr_part.append(arg)
      return expr_part, qexpr_part
  
imports: from sympy.core.expr import Expr
  from sympy.core.symbol import Symbol
  from sympy.core.sympify import sympify
  from sympy.matrices.dense import Matrix
  from sympy.printing.pretty.stringpict import prettyForm
  from sympy.core.containers import Tuple
  from sympy.utilities.iterables import is_sequence
  from sympy.physics.quantum.dagger import Dagger
  from sympy.physics.quantum.matrixutils import numpy_ndarray, scipy_sparse_matrix, to_sympy, to_numpy, to_scipy_sparse
label_desc: Use image node_id 4 for calling a global function with example usage: split_qexpr_parts(e) and returns: expr_part,  qexpr_part