""

domingo, 24 de noviembre de 2024

PYTHON BASICO (TRUCO #1) CONCATENACION Y AMPLIACION DE VARIABLES DE TEXTO

 Variables ampliadas por cadenas de texto

(CONCATENACION)

Para encadenar texto, se puede realizar de dos maneras utilizando el operador aritmético + o la como (,)


>> categoria1 = "verde"
>> color_detalle = categoria1 + ' ' + 'oscuro"
>> print(categoria1 + ' oscuro')
>> print(categoria1, 'oscuro')


 

 

lunes, 4 de noviembre de 2024

JUPYTER EN PYTHON

 

jupyter

../../../_images/nasa-0DjOJ6Q8wUs-unsplash.jpg

El módulo jupyter proporciona un entorno de desarrollo integrado para ciencia de datos, que no es exclusivo de Python, sino que además admite otros lenguajes en su «backend». [1]

pip install jupyter

Para lanzar el servidor de «notebooks»[2]:

jupyter notebook

Nota

Este comando nos debería abrir una ventana en el navegador web por defecto del sistema, apuntando a la dirección http://localhost:8888

Notebooks

Un «notebook» es un documento que está compuesto por celdas en las que podemos incluir:

  • Texto en formato markdown (incluyendo fórmulas).

  • Elementos multimedia.

  • Código Python ejecutable.

../../../_images/jupyter-cells.jpg

Ejecución de celdas en Jupyter Notebook

En código «markdown», la salida de la celda es la renderización del texto. En código Python, la salida de la celda es el resultado de la última sentencia incluida en la celda.

Nota

Los «notebooks» o cuadernos son básicamente archivos de texto en formato json con extensión .ipynb (que proviene de «IPython Notebook»).

Interfaz

Jupyter se presenta como una aplicación web en cuya interfaz podemos encontrar distintos elementos que nos permitirán desarrollar nuestras tareas de programación de una forma más cómoda.

Explorador de archivos

Lo primero que veremos al arrancar el servidor de «notebooks» será el explorador de archivos con un diseño muy similar al de cualquier sistema operativo.

../../../_images/jupyter-browser.png

Explorador de archivos de Jupyter Notebook

Nota

Los «notebooks» que se están ejecutando suelen tener un color verde en el icono, mientras que los que están parados aparecen en gris.

Barra de menú

Menú Fichero

Del estilo de los menús tradicionales de aplicaciones, aquí podemos encontrar las principales funciones sobre ficheros.

../../../_images/jupyter-file-menu.png

Menú Fichero de Jupyter Notebook

Este menú contiene las acciones que podemos realizar sobre una o varias celdas.

../../../_images/jupyter-edit-menu.png

Menú Edición de Jupyter Notebook

Permite modificar el aspecto visual de determinados elementos de la aplicación.

../../../_images/jupyter-view-menu.png

Menú Vista de Jupyter Notebook

Insertar celda antes o después de la actual.

../../../_images/jupyter-insert-menu.png

Menú Insertar de Jupyter Notebook

Menú Celda

Principalmente enfocado a la ejecución de las celdas que componen el «notebook».

../../../_images/jupyter-cell-menu.png

Menú Celda de Jupyter Notebook

Permite gestionar el servicio que se encarga de lanzar los «notebooks».

../../../_images/jupyter-kernel-menu.png

Menú Kernel de Jupyter Notebook

El kernel es la capa de software que se encarga de ejecutar las celdas de nuestro «notebook» que contienen código. Podemos tener instalados distintos «kernels» para un mismo Jupyter Notebook. El kernel se puede interrumpir o reiniciar.

Hay veces, que debido a un error de programación o a procesos muy largos, podemos encontrarnos con el «kernel» bloqueado durante un largo período de tiempo. En estas ocasiones es útil reiniciarlo para salvar esa situación.

../../../_images/jupyter-busy-kernel.png

Kernel ocupado

Menú Ayuda

Como cualquier aplicación, existe un menú de ayuda en el que se pueden encontrar enlaces a referencias y manuales.

../../../_images/jupyter-help-menu.png

Menú Ayuda de Jupyter Notebook

MathJax

ANCHO RECOMENDADO PARA EL CODIGO EN PYTHON

 

Ancho del código

Los programas suelen ser más legibles cuando las líneas no son excesivamente largas. La longitud máxima de línea recomendada por la guía de estilo de Python es de 80 caracteres.

Sin embargo, esto genera una cierta polémica hoy en día, ya que los tamaños de pantalla han aumentado y las resoluciones son mucho mayores que hace años. Así las líneas de más de 80 caracteres se siguen visualizando correctamente. Hay personas que son más estrictas en este límite y otras más flexibles.

En caso de que queramos romper una línea de código demasiado larga, tenemos dos opciones:

  1. Usar la barra invertida \:

factorial = 4 * 3 * 2 * 1

factorial = 4 * \
            3 * \
            2 * \
            1

Usar los paréntesis (...):

factorial = 4 * 3 * 2 * 1

factorial = (4 *
             3 *
             2 *
             1)

COMO ESCRIBIR COMENTARIOS EN PYTHON

 

Comentarios

Los comentarios son anotaciones que podemos incluir en nuestro programa y que nos permiten aclarar ciertos aspectos del código. Estas indicaciones son ignoradas por el intérprete de Python.

Los comentarios se incluyen usando el símbolo almohadilla # y comprenden hasta el final de la línea.

Comentario en bloque
# Universe age expressed in days
universe_age = 13800 * (10 ** 6) * 365

Los comentarios también pueden aparecer en la misma línea de código, aunque la guía de estilo de Python no aconseja usarlos en demasía:

Comentario en línea
stock = 0   # Release additional articles

Reglas para escribir buenos comentarios: [6]

  1. Los comentarios no deberían duplicar el código.

  2. Los buenos comentarios no arreglan un código poco claro.

  3. Si no puedes escribir un comentario claro, puede haber un problema en el código.

  4. Los comentarios deberían evitar la confusión, no crearla.

  5. Usa comentarios para explicar código no idiomático.

  6. Proporciona enlaces a la fuente original del código copiado.

  7. Incluye enlaces a referencias externas que sean de ayuda.

  8. Añade comentarios cuando arregles errores.

  9. Usa comentarios para destacar implementaciones incompletas.

lunes, 14 de octubre de 2024

NOTAS SOBRE FUNCIONES DE UN CURSO AVANZADO DE PYTHON

 # 1. FUNCIONES

Una función es un bloque de código que se encarga de una tarea especifica. Cada función es independiente de las otras ya que contienen las instrucciones para desarrollar paso a paso la tarea para la cual fue creada.

Ventajas:

*   Permiten tener el código organizado  y separado en pequeñas partes.
*   Evitan repetir las mismas instrucciones en diferentes partes del codigo.
*   El código es mas legible.


>> def Nombre_funcion(parametro, *args, **kwargs):
>>    Instruccion_uno
>>    Instruccion_dos
>>    ...............
>>    ...............
>>    Instruccion_n
>>    retorno_variable


Parámetro: es el nombre asignado a la variable
argumento: es el valor asignado a la variable
*args: son parámetros opcionales en forma de lista
**kwargs: son parámetros opcionales en forma de diccionario.
Retorno: es el valor que regresa a la función como resultado de la tarea que la función realiza.

 

# Ejemplo, crear una función que permita calcular el area de un cuadrado.

 
>> def calcular_area_cuadrado(lado):
>>  """Calcular el area de un cuadrado"""
>>  area = lado * lado
>>  return area

>> area_cuadrado = calcular_area_cuadrado(lado=5)
>> print(area_cuadrado)

 

# Ejemplo calcular el area de un rectangulo

>> def calcular_area_rectangulo(base,altura):
>>  """Funcion para calcular el area de un rectangulo"""
>>  area_geometrica = base * altura
>>  return area_geometrica

>> area_rectangulo = calcular_area_rectangulo(5,2)
>> print("El area del rectangulo es: ",area_rectangulo)

 

# Ejemplo calcular el area de un circulo

 
>> import math
>> def calc_area_circ(radio):
>>  """Funcion para calcular el area de un circulo"""
>>  area_circ = (math.pi)* radio**2
>>  return area_circ

>> area_circulo = calc_area_circ(10)
>> print("El area del circulo es: ",area_circulo)

 

# Uso de *args

 
>> def calcular_perimetro(lado_1,lado_2,lado_3,lado_4):
>>  perimetro = lado_1 + lado_2 + lado_3 + lado_4
>>  return perimetro

>> calcular_perimetro(1,2,3,4)



# Uso de *args

 
>> def calcular_perimetro(*args):
>>  print(args)
>>  perimetro = 0
>>  for lado in args:
>>    perimetro += lado
>>  return perimetro

>> calcular_perimetro(1,2,3,4,5,6,7)

>> perimetro_triangulo = calcular_perimetro(1,2,3)
>> print(perimetro_triangulo)

# Uso de **Kwargs

 
>> def funcion_kwargs(**kwargs):
>>  print(kwargs)

>> funcion_kwargs()

>> def funcion_kwargs(**kwargs):
>>  print(kwargs)
>>  for key,value in kwargs.items():
>>    print(f"llave: {key}, valor: {value}")
>>  print(kwargs["nombre"],kwargs["apellido"])

>> funcion_kwargs(nombre="Paco",apellido = "Botero")

TRES MANERAS DIFERENTES DE CONVERTIR TEXTO EN AUDIO MP3 CON TTS

 Manera #1: visita el portal https://ttsmaker.com/

En el puedes encontrar muchas voces de géneros masculino, femenino, neutro, en varios idiomas diferentes, el servicio es gratuito pero cada voz tiene una cantidad limitada de caracteres diarios. No requieres saber de programación, solo copia y pega el texto que quieres convertir en audio o escribirlo directamente en la ventana de texto del sitio y conviértelo al audio en tu voz idioma favorito.

 

  


Manera 2: Utiliza código de python en tu editor de código favorito y hazlo tu mismo haciendo uso de la librería especializada, pyttsx3. En el link encuentras un tutorial completo. 

https://tinyurl.com/yoeqpdxf

 

Manera 3: Utiliza la librería GTTS de google en python, en el editor de google colab.

>> !pip install gtts

>> from gtts import gTTS
>> import os
>> texto = input()
>> tts = gTTS(text=texto, lang = 'es')
>> tts.save("tecsify.mp3")
>> os.system("tecsify.mp3")

>> #www.Tecsify.com/blog



 

Entradas recientes

Sabes que es SfePy y para que sirve?

 Fuente: SfePy.org SfePy: elementos finitos simples en Python ¶ SfePy es un software para resolver sistemas de diferencial parcial acoplado ...

Entradas Populares