Ir al contenido principal

Entradas

Mostrando las entradas etiquetadas como Python

Diccionario español en la terminal.

Mucho tiempo me pregunté sobre las opciones que se tienen en la línea de comandos para buscar el significado de palabras en español sin tener que recurrir a un navegador web u otra interfaz que nos demore en saber lo que necesitamos. No encontré nada para mi lengua. Con unas cuantas líneas de código en Python logre la funcionalidad que necesitaba, todo gracias al web scraping . Obviamente para que funcione la computadora necesita salida a Internet . Python puede generar un ejecutable, a modo que no tengamos que hacer un alias o un shell wrapper para que funcione como si se tratara de un comando más del sistema operativo. Creación de ejecutable La utilitaria que probé fue pyinstaller . Si no lo tienen en su biblioteca la pueden instalar con su gestor de paquetes para Python, por ejemplo pip (previamente instalado también). sudo pip3 install pyinstaller Una vez que terminó de instalar las dependencias y el módulo en sí, solo ejecutamos el comando: pyinstall...

Gzip con Python 2.7–3.x

Hace poco estuve pensando sobre la manera en que aprendemos a llevar a cabo las tareas de administración de un servidor GNU/Linux, el cual nos brinda un sin fin de comandos para el día a día. Lo primero que aprendemos es a realizarlas desde una terminal, claro, siempre y cuando el esfuerzo sea humanamente alcanzable. Lo segundo, es la automatización vía bash scripting , con la cual resolvemos todo aquello que no estamos dispuestos a realizar frecuentemente. En mi eterna necesidad de aprender nuevas habilidades y ponerlas en marcha lo antes posible, contemplé la viabilidad de hacer las mismas automatizaciones desde una perspectiva más enfocada a la programación en Python. Esto por dos razones: * Sentirme más cómodo con la sintaxis y librerías de Python. En efecto, quiero aprender, mejorar y dominar este lenguaje (y pensamiento de programador sin llegar a ser uno). * Ayudar a mi cerebro a que pueda resolver problemas obvios con diferentes alternativas. Así...

Funciones en Python

1. La definición más sencilla de funciones en Python es con la palabra reservada def. A continuación se muestra el encabezado de la función, el procedimiento y por último la invocación. def say_hello():     print ('My name is Amalfitano')     say_hello()   2. También es posible asignar valores por defecto a los parámetros de una función. # Cuando se utilizan parametros es posible indicar valores por defecto. # Se utiliza el envío de parámetros por medio de variables. # También se utiliza el buid-in 'format' para indicar dónde insertar # la variable dentro del build-in 'print'. def say_my_name(name='Roberto Bolaño'):     print ('My name is {}'.format(name)) name_s='Javier Cercas' say_my_name(name_s)   La impresión del código anterior muestra el nombre de Javier Cercas . Si la invocación la realizamos sin parámetros, entonces la impresión será Roberto Bolaño . 3. La funciones también pueden devolver valor...

Iniciando con Python

Python programming for beginners de Jason Cannon es uno de los mejores libros introductorios que he leído. Parte del secreto de Cannon es su escritura lacónica y economía en páginas, haciendo magnífico para aquellos que tienen fundamentos de programación de otros lenguajes, haciendo sólo la absorción de la sintaxis y reforzamiento a través de ejemplos. Con este libro podrás aprender a construir sencillos programas con Python y sus múltiples funcionalidades para trabajar con datos y fuentes externas. Recomiendo que al finalizar el libro, no se abandone el aprendizaje de Python y se continúe con libros más avanzados para afianzar el conocimiento adquirido. No cae nada mal algo de algoritmia para pensar eficientemente en la resolución de problemas.

Análisis de efectividad en lenguajes de programación.

Últimamente me ha dado por realizar pequeñas prácticas que hace mucho realicé como parte de mi descubrimiento en algunos lenguajes de programación. He leído mucho respecto a los sabores y performance de cada lenguaje, cuyos argumentos no trataré por ser sumamente objetivos. Algunos valoran la facilidad, otros la poca verborrea que facilitan la construcción de complejos componentes de software. A continuación expongo los códigos comparados y las salidas en terminal. Características de la computadora. CPU: 2 CPUs con 2 Cores AMD Turion(tm) 64 X2 Mobile Technology TL-60 a 1800.000 Mhz. Memoria RAM: 3.7G Sistema Operativo: Fedora release 20 (Heisenbug) Versiones de compiladores/interpretes Python: 2.7 C: gcc version 4.8.3 20140911 (Red Hat 4.8.3-7) (GCC) Java: 1.7 hotspot a 64 bits Ruby: 2.0 Go: 1.4.2 64 bits Python for my_range in range(1,90000000): print (my_range) Tiempo de ejecución real    10m24.691s ...