class_docstr: A printer to convert Python expressions to
  strings of the Wolfram's Mathematica code
class_docstr_tok: ["A","printer","to","convert","Python","expressions","to","strings","of","the","Wolfram","'s","Mathematica","code"]
code: def _print_Function(self, expr):
      if expr.func.__name__ in self.known_functions:
          cond_mfunc = self.known_functions[expr.func.__name__]
          for cond, mfunc in cond_mfunc:
              if cond(*expr.args):
                  return "%s[%s]" % (
                      mfunc,
                      self.stringify(expr.args, ", "),
                  )
      elif expr.func.__name__ in self._rewriteable_functions:
          # Simple rewrite to supported function possible
          target_f, required_fs = self._rewriteable_functions[
              expr.func.__name__
          ]
          if self._can_print(target_f) and all(
              self._can_print(f) for f in required_fs
          ):
              return self._print(expr.rewrite(target_f))
      return expr.func.__name__ + "[%s]" % self.stringify(
          expr.args, ", "
      )
  
imports: from __future__ import annotations
  from typing import Any
  from sympy.core import Basic, Expr, Float
  from sympy.core.sorting import default_sort_key
  from sympy.printing.codeprinter import CodePrinter
  from sympy.printing.precedence import precedence
label_desc: Use image node_id 26 for calling the MCodePrinter obj's underlying member method code with example usage: obj._print_Function(expr) and returns: unknown, unknown, self