{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "Esta será una microentrada para presentar una extensión para el notebook que estoy usando en un curso interno que estoy dando en mi empresa.\n", "\n", "Si a alguno más os puede valer para mostrar cosas básicas de Python (2 y 3, además de Java y Javascript) para muy principiantes me alegro." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Nombre en clave: Jupytor" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Esta extensión lo único que hace es embeber dentro de un IFrame la página de [pythontutor](http://www.pythontutor.com) usando el código que hayamos definido en una celda de código precedida de la *cell magic* `%%jupytor`.\n", "\n", "Como he comentado anteriormente, se puede escribir código Python2, Python3, Java y Javascript, que son los lenguajes soportados por pythontutor." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Ejemplo" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Primero deberemos instalar la extensión. Está disponible en pypi por lo que la podéis instalar usando `pip install jupytor`. Una vez instalada, dentro de un notebook de IPython la deberías cargar usando:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The jupytor extension is already loaded. To reload it, use:\n", " %reload_ext jupytor\n" ] } ], "source": [ "%load_ext jupytor" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Una vez hecho esto ya deberiamos tener disponible la *cell magic* para ser usada:" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "\n", " \n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%%jupytor --lang python3\n", "a = 1\n", "b = 2\n", "\n", "def add(x, y):\n", " return x + y\n", "\n", "c = add(a, b)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Ahora un ejemplo con javascript:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "\n", " \n", " " ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "%%jupytor --lang javascript\n", "var a = 1;\n", "var b = 1;\n", "console.log(a + b);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Y eso es todo" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Lo dicho, espero que sea útil para alguien.\n", "\n", "* [Jupytor en pypi](https://pypi.python.org/pypi/jupytor/0.1.0).\n", "* [Jupytor en github](https://github.com/kikocorreoso/jupytor)\n", "\n", "Saludos." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.4.0" } }, "nbformat": 4, "nbformat_minor": 0 }