Mostrando las entradas con la etiqueta python. Mostrar todas las entradas
Mostrando las entradas con la etiqueta python. Mostrar todas las entradas

martes, 2 de abril de 2019

Menu en consola con Python

Código de ejemplo:


En este ejemplo se simula un cajero automático (ATM) indicando cuales podrían ser las opciones a mostrar.

Tenemos 2 funciones sencillas:

imprimir() --> que sirve para imprimir un saludo de bienvenida y todas las opciones disponibles

menu() --> que es nuestro "menú" que muestra siempre las opciones disponibles
Pueden ocurrir 3 situaciones:
  1. Fin del programa: el usuario ingresó el número 0. El programa finaliza indicando un saludo de despedida
  2. Opción Válida: el usuario ingresa un numero (1,2,3 o 4) y el programa indica que opción se ingreso
  3. Opción Inválida: el usuario ingresa un número que no sea del 0 al 4.
  4. Dato Inválido: el usuario ingresa un carácter , una cadena de texto, o no ingresa nada. 
El "flujo" principal del algoritmo es controlado por el while True. La única forma de salir del bucle es cuando el usuario ingresa el numero 0. Ingresando cualquier otro valor el bucle se sigue ejecutando.

domingo, 24 de marzo de 2019

El Zen de Python 🐍



Fuente de la imagen: https://nerdlettering.com/products/the-zen-of-python-mug

Tim Peter ingeniero de software es el autor  de 19 de los 20 "aforismos" de software que influyen en el diseño de Python. PEP 20  y "thezenofpythones" son las fuentes de esta entrada. 

Empezamos antes que nada escribiendo en el inteprete de Python (no importa si estas usando Python 2.x o Python 3.x, funciona a partir de la version 2.2.1). En mi caso estoy usando Python 3.6.4 en Windows 10 de 64 bits

>>> import this

Este resultado es el que nos devuelve el "Easter Egg"


Para los que tenemos (claramente me incluyo ) problemas con el ingles, los tenemos traducidos

  • Bello es mejor que feo.
  • Explícito es mejor que implícito.
  • Simple es mejor que complejo.
  • Complejo es mejor que complicado.
  • Plano es mejor que anidado.
  • Espaciado es mejor que denso.
  • La legibilidad es importante.
  • Los casos especiales no son lo suficientemente especiales como para romper las reglas.
  • Sin embargo la practicidad le gana a la pureza.
  • Los errores nunca deberían pasar silenciosamente.
  • A menos que se silencien explícitamente.
  • Frente a la ambigüedad, evitar la tentación de adivinar.
  • Debería haber una, y preferiblemente solo una, manera obvia de hacerlo.
  • A pesar de que esa manera no sea obvia a menos que seas Holandés.
  • Ahora es mejor que nunca.
  • A pesar de que nunca es muchas veces mejor que *ahora* mismo.
  • Si la implementación es difícil de explicar, es una mala idea.
  • Si la implementación es fácil de explicar, puede que sea una buena idea.
  • Los espacios de nombres son una gran idea, ¡tengamos más de esos!

Estos aforimos resumen la filosia de Python. Abajo en las referencias se indican mas fuentes  y ejemplos para ver lo simple que es pensar como "pythonista".


Referencias:

https://es.wikipedia.org/wiki/Zen_de_Python

https://www.python.org/dev/peps/pep-0020/#easter-egg

http://www.python.org.ar/wiki/PythonZen

Ejemplos en ingles

Explicacion en español (github)

Explicacion en ingles

martes, 26 de febrero de 2019

Números Aleatorios en Python

Imagen relacionadaSiempre es interesante saber como generar números aleatorios, ya sea porque estamos queriendo resolver algún ejercicios que nos dieron en la "facu" en el cual necesitamos utilizar este tipo de números (como algún Montecarlo o alguna prueba de Chi-Cuadrado tan utilizadas en la carrera de medicina y en cualquiera la cual se vea algo de estadística) o porque estamos queriendo generar un juego de dados muy sencillo en nuestra computadora.

Sea cual sea el motivo, en Python (tanto 2 como 3) encontramos la solución para esto de una manera MUY pero MUY sencilla.

Las funciones para llevar a cabo la aleatoriedad las importaremos de la librería random.

 Así que en la parte superior de nuestro código ponemos:

  1. from random import randint, uniform,random
  Donde randint, uniform y random serán las 3 funciones que importaremos en este pequeño y sencillo tutorial:

  • randint(a,b) --> randint nos devuelve un numero entero aleatorio entre a y b
           EJ: randint (0,10) --> 5
  • uniform (a,b) --> Retorna un numero con decimal (o flotante) aleatorio entre a y b 
          EJ: uniform(0,10) --> 5.55234

  • random() --> retorna un numero aleatorio decimal entre 0 y 1. ¡¡MUY ÚTIL PARA CALCULAR PORCENTAJES!! 
         EJ: random() --> 0.2314233

¡¡EXTRA!! 

Interesante también conocer la función de redondear y la de truncar números a fin de recortar un poco los decimales ya que la presentación por defecto de Python es poco bonita.

Para redondear:

round(a,b) --> round nos redonda un numero a en el decimal b.

ej: tenemos un número 5.12325613 y se lo pasamos a la función round(5.12325613,2) nos retornará el número --> 5.12 lo cual es mucho mas bonito para una presentación.

También recuerden que para mostrar en pantalla se pueden ayudar de la función print() que al combinar alguna de las anteriores con esta nos queda:

print (random())
Asi que un ejemplo de un pequeño código que nos genere un número aleatorio entre 0 y 1 (para funciones de probabilidad por ejemplo)  con dos decimales nos quedaría de la siguiente manera:

from random import random

print (round(random(),2))


BUENO LO DEJAMOS AQUÍ!! espero que les sea de mucha utilidad el siguiente micro tutorial de números aleatorios de Python y sepan sacarle provecho para simular alguna experiencia o fabricar sus propios dados virtuales (el cual será tema de un próximo post).

Como siempre me despido deseándoles que puedan escribir unas lindas lineas de código acompañado de un "buen verde amargo"

¡¡SALUDOS CODEADORES!!



Instalar Geany en Ubuntu 18.04 y 16.04


Resultado de imagen para geany logoGeany es una IDE ( Integrated Development Environment - por sus siglas en ingles- o Entorno de Desarrollo Integrado en español) que fue diseñado para proveernos de una IDE liviana, rapida y pontente para editar archivos de texto y testearlos en la misma.


A continuación en este tutorial veremos como instalarlo y algunas de sus Características

Características

Geany posee muchas características que lo hacen una tremenda opción a la hora de elegir una IDE o simplemente un editor de texto, las mas básicas son las siguientes
  • Resaltado de la sintaxis;
  • Completar código;
  • Geany suporta archivos de C, JAVA, PHP, HTML, Python, PERL, etc.
  • entre otros!! --> more….

Instalar Geany en Ubuntu

Geany esta disponible por defecto en los repositorios de UBUNTU. Para instalar la versión mas reciente, vamos a necesitar configurar el ppa de Geany en nuestro sistema.
Para ellos abrimos una terminal y tipeamos los siguientes comandos:

sudo add-apt-repository ppa:geany-dev/ppa
sudo apt-get update
 
Luego para instalar Geany en nuestro UBUNTU:

sudo apt-get install geany geany-plugins-common 
 
 

Lanzar Geany IDE

Para ejecutar Geany simplemente lo buscan entre sus programas instalados dependiendo de la distribución que tengan o interfaz gráfica.

Otra opción para ejecutarlo es ejecutarlo es mediante la terminal escribiendo solamente el comando "geany" (obviamente sin comillas).

Bueno, aca finaliza este tutorial, espero que lo disfruten tanto como yo, ya que es una genialidad y escriban unas lindas lineas de código acompañados de un buen mate amargo ;)

SALUDOS AMIGOS CODEADORES!