Variable: org-babel-python--def-format-value

org-babel-python--def-format-value is a variable defined in ob-python.el.gz.

Value

"def __org_babel_python_format_value(result, result_file, result_params):\n    with open(result_file, 'w') as f:\n        if 'graphics' in result_params:\n            result.savefig(result_file)\n        elif 'pp' in result_params:\n            import pprint\n            f.write(pprint.pformat(result))\n        elif 'list' in result_params and isinstance(result, dict):\n            f.write(str(['{} :: {}'.format(k, v) for k, v in result.items()]))\n        else:\n            if not set(result_params).intersection(['scalar', 'verbatim', 'raw']):\n                def dict2table(res):\n                    if isinstance(res, dict):\n                        return [(k, dict2table(v)) for k, v in res.items()]\n                    elif isinstance(res, list) or isinstance(res, tuple):\n                        return [dict2table(x) for x in res]\n                    else:\n                        return res\n                if 'table' in result_params:\n                    result = dict2table(result)\n                try:\n                    import pandas\n                except ImportError:\n                    pass\n                else:\n                    if isinstance(result, pandas.DataFrame) and 'table' in result_params:\n                        result = [[result.index.name or ''] + list(result.columns)] + [None] + [[i] + list(row) for i, row in result.iterrows()]\n                    elif isinstance(result, pandas.Series) and 'table' in result_params:\n                        result = list(result.items())\n                try:\n                    import numpy\n                except ImportError:\n                    pass\n                else:\n                    if isinstance(result, numpy.ndarray):\n                        if 'table' in result_params:\n                            result = result.tolist()\n                        else:\n                            result = repr(result)\n            f.write(str(result))"

Documentation

Python function to format value result and save it to file.

Source Code

;; Defined in /usr/src/emacs/lisp/org/ob-python.el.gz
(defconst org-babel-python--def-format-value "\
def __org_babel_python_format_value(result, result_file, result_params):
    with open(result_file, 'w') as f:
        if 'graphics' in result_params:
            result.savefig(result_file)
        elif 'pp' in result_params:
            import pprint
            f.write(pprint.pformat(result))
        elif 'list' in result_params and isinstance(result, dict):
            f.write(str(['{} :: {}'.format(k, v) for k, v in result.items()]))
        else:
            if not set(result_params).intersection(\
['scalar', 'verbatim', 'raw']):
                def dict2table(res):
                    if isinstance(res, dict):
                        return [(k, dict2table(v)) for k, v in res.items()]
                    elif isinstance(res, list) or isinstance(res, tuple):
                        return [dict2table(x) for x in res]
                    else:
                        return res
                if 'table' in result_params:
                    result = dict2table(result)
                try:
                    import pandas
                except ImportError:
                    pass
                else:
                    if isinstance(result, pandas.DataFrame) and 'table' in result_params:
                        result = [[result.index.name or ''] + list(result.columns)] + \
[None] + [[i] + list(row) for i, row in result.iterrows()]
                    elif isinstance(result, pandas.Series) and 'table' in result_params:
                        result = list(result.items())
                try:
                    import numpy
                except ImportError:
                    pass
                else:
                    if isinstance(result, numpy.ndarray):
                        if 'table' in result_params:
                            result = result.tolist()
                        else:
                            result = repr(result)
            f.write(str(result))"
  "Python function to format value result and save it to file.")