{
"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
}