10 fragmentos de código de Python para problemas de programación cotidianos

En los últimos años, el lenguaje de programación Python ha visto una gran base de usuarios. Una de las razones podría ser que es más fácil de aprender en comparación con otros lenguajes de programación orientados a objetos como Java, C++, C#, JavaScript y, por lo tanto, cada vez más principiantes que ingresan al campo de la informática optan por Python . Otra razón por la que la popularidad de Python se ha disparado es que se usa en casi todos los dominios de la industria de TI, ya sea en ciencia de datos, aprendizaje automático, automatización, web scraping, inteligencia artificial, ciberseguridad, computación en la nube, etc. ! De acuerdo con la reciente encuesta de desarrolladores, se ve que Python es actualmente el segundo lenguaje de programación más querido después de JavaScript y se disparará fácilmente en los próximos años.La demanda de desarrolladores de Python ha aumentado significativamente, especialmente en los últimos meses y, por lo tanto, aprender Python podría brindarle algunas opciones profesionales realmente buenas.

10-Python-Code-Snippets-For-Programming-Problems

Entonces, si eres un desarrollador de Python, este artículo definitivamente es para ti. Hoy vamos a hablar de fragmentos de código de Python con su breve explicación que son muy útiles para desarrolladores y programadores en su día a día. Veremos varios problemas de codificación que surgen regularmente y cómo resolverlos utilizando los fragmentos de código de Python que se proporcionan aquí. ¡Entonces empecemos!

1. Lista de comprensión usando If-Else

Las listas de comprensión en Python son muy útiles y poderosas. Reducen la longitud del código a una gran longitud y lo hacen más legible. En el siguiente código, podemos ver que estamos verificando múltiplos de 6, y luego múltiplos de 2 y 3 usando las condiciones if-else dentro de la lista, lo que redujo el código en gran medida.

Python3

my_list = ['Multiple of 6' if i % 6 == 0 
           else 'Multiple of 2' if i % 2 == 0 
           else 'Multiple of 3' if i % 3 == 0 
           else i for i in range(1, 20)]
print(my_list)

Producción:

[1, ‘Múltiplo de 2’, ‘Múltiplo de 3’, ‘Múltiplo de 2’, 5, ‘Múltiplo de 6’, 7, ‘Múltiplo de 2’, ‘Múltiplo de 3’, ‘Múltiplo de 2’, 11 , ‘Múltiplo de 6’, 13, ‘Múltiplo de 2’, ‘Múltiplo de 3’, ‘Múltiplo de 2’, 17, ‘Múltiplo de 6’, 19]

2. Fusión de dos diccionarios

Puede sonar muy confuso fusionar dos diccionarios o agregarlos. Pero, sorprendentemente, hay más de un método en el que puedes fusionar dos diccionarios . En el siguiente código, el primer método usa el desempaquetado de diccionarios donde los dos diccionarios se desempaquetan juntos en result . En el segundo método, primero copiamos el primer diccionario en el resultado y luego lo actualizamos con el contenido del segundo diccionario. El tercer método es una implementación sencilla que utiliza la comprensión de diccionario, similar a lo que vimos en la comprensión de listas anterior.

Python3

my_dict1 = {'a' : 1, 'b' : 2, 'c' : 3}
my_dict2 = {'d' : 4, 'e' : 5, 'f' : 6}
  
# Method 1
result = { **my_dict1, **my_dict2}
print(result)
  
# Method 2
result = my_dict1.copy()
result.update(my_dict2)
print(result)
  
# Method 3
result = {key: value for d in (my_dict1, my_dict2) for key, value in d.items()}
print(result)

Producción:

{‘a’: 1, ‘b’: 2, ‘c’: 3, ‘d’: 4, ‘e’: 5, ‘f’: 6}

{‘a’: 1, ‘b’: 2, ‘c’: 3, ‘d’: 4, ‘e’: 5, ‘f’: 6}

{‘a’: 1, ‘b’: 2, ‘c’: 3, ‘d’: 4, ‘e’: 5, ‘f

3. Manejo de archivos

El manejo de archivos se usa en varios programas de Python, especialmente los relacionados con datos en los que necesitamos leer valores separados por comas enormes. El manejo de archivos tiene varias operaciones como abrir un archivo, leer de un archivo, escribir en un archivo y cerrar un archivo.

Python3

# Open a file
f = open('filename.txt')
  
  
# Read from a file
f = open('filename.txt', 'r')
  
# To read the whole file
print(f.read())
  
# To read single line
print(f.readline())
  
  
# Write to a file
f = open('filename.txt', 'w')
f.write('Writing into a file \n')
  
  
# Closing a file
f.close()

4. Cálculo del tiempo de ejecución

A menudo es necesario optimizar el código y analizar las métricas de rendimiento. Aquí, la biblioteca del tiempo viene a ayudar. Podemos medir el tiempo de ejecución de nuestro código y optimizarlo. También podemos usarlo para medir el tiempo de ejecución de dos piezas de código que hacen el mismo trabajo para que podamos elegir la más optimizada. 

Python3

import time
  
start_time = time.time()
  
# printing all even numbers till 20
for i in range(20):
  if i % 2 == 0:
    print(i, end = " ")
  
end_time = time.time()
time_taken = end_time - start_time
print("\nTime: ", time_taken)

Producción:

0 2 4 6 8 10 12 14 16 18

Hora: 2.47955322265625e-05

5. Ordenar una lista de diccionarios

Ordenar una lista de diccionarios suena abrumador al principio, pero podemos hacerlo usando dos enfoques diferentes pero similares. Simplemente podemos usar la función integrada sorted() o sort() que funciona en listas usando una función lambda dentro de ella que ordena los diccionarios según su clave ‘id’. En el primer método, el tipo de devolución es Ninguno ya que los cambios están en su lugar, por otro lado, en el segundo método, se devuelve una nueva lista de diccionarios ordenados.

Python3

person = [
  {
    'name' : 'alice',
    'age' : 22,
    'id' : 92345
  },
  {
    'name' : 'bob',
    'age' : 24,
    'id' : 52353
  },
  {
    'name' : 'tom',
    'age' : 23,
    'id' : 62257
  }
]
  
# Method 1
person.sort(key=lambda item: item.get("id"))
print(person)
  
# Method 2
person = sorted(person, key=lambda item: item.get("id"))
print(person)

Producción:

[{‘nombre’: ‘bob’, ‘edad’: 24, ‘id’: 52353}, {‘nombre’: ‘tom’, ‘edad’: 23, ‘id’: 62257}, {‘nombre’: ‘alicia’, ‘edad’: 22, ‘id’: 92345}]

[{‘nombre’: ‘bob’, ‘edad’: 24, ‘id’: 52353}, {‘nombre’: ‘tom’, ‘edad’: 23, ‘id’: 62257}, {‘nombre’: ‘alicia’, ‘edad’: 22, ‘id’: 92345}]

6. Encontrar el elemento de frecuencia más alta

Podemos encontrar el elemento que ocurre el tiempo máximo, pasando la clave como el recuento de elementos, es decir, el número de veces que aparecen. 

Python3

my_list = [8,4,8,2,2,5,8,0,3,5,2,5,8,9,3,8]
print("Most frequent item:", max(set(my_list), key=my_list.count))

Producción:

Ítem ​​más frecuente: 8

7. Manejo de errores

El manejo de errores es el uso de try-catch (y finalmente) para erradicar cualquier posibilidad de parada repentina durante la ejecución. La declaración que puede causar un error se coloca en un bloque de prueba, seguido de un bloque de excepción que detecta la excepción (si la hay), y luego tenemos el bloque ‘finalmente’ que se ejecuta sin importar qué y es opcional. 

Python3

num1, num2 = 2,0
try:
    print(num1 / num2)
except ZeroDivisionError:
    print("Exception! Division by Zero not permitted.")
finally:
    print("Finally block.")

Producción:

¡Excepción! No se permite la división por cero.

Finalmente bloque.

8. Encontrar una substring en la lista de strings

Esta es nuevamente una pieza de código muy común que los programadores de Python encuentran muy a menudo. Si necesitamos encontrar substrings dentro de una lista de strings (también se puede aplicar en strings más grandes en lugar de solo listas), podemos usar el método find() que devuelve -1 si el valor no está presente en la string, o devuelve el primera ocurrencia. En el segundo método, podemos usar directamente el operador in para ver si la substring deseada está presente en la string.

Python3

records = [
  "Vani Gupta, University of Hyderabad",
  "Elon Musk, Tesla",
  "Bill Gates, Microsoft",
  "Steve Jobs, Apple"
]
  
# Method 1
name = "Vani"
for record in records:
    if record.find(name) >= 0:
        print(record)
  
# Method 2
name = "Musk"
for record in records:
    if name in record:
        print(record)

Producción:

Vani Gupta, Universidad de Hyderabad

Elon MuskTesla

9. Formato de string

El formato de strings se utiliza para formatear o modificar strings. Hay muchas formas en las que se puede dar formato a las strings. En el primer método, usamos la concatenación básica que simplemente suma las strings. En el segundo método, usamos f-strings, donde el nombre de la variable se escribe entre llaves y se reemplaza durante el tiempo de ejecución. Similar al segundo método, tenemos el tercer método, donde usamos %s, donde la s significa que es una string, y en el cuarto método, usamos la función format() que toma la string o variable a insertar en la string como un argumento y lo coloca donde vea una llave.

Python3

language = "Python"
  
# Method 1
print(language + " is my favourite programming language.")
  
# Method 2
print(f"I code in {language}")
  
# Method 3
print("%s is very easy to learn." % (language))
  
# Method 4
print("I like the {} programming language.".format(language))

Producción:

Python es mi lenguaje de programación favorito.

Codifico en Python

Python es muy fácil de aprender.

Me gusta el lenguaje de programación Python.

10. Aplanar una lista

Para aplanar o expandir una lista que contiene otras listas de longitudes y números variables, podemos usar los métodos append() y extend() y seguir agregando eso a la nueva lista. La diferencia entre los dos métodos es que append() agrega una sola variable al final de la lista, de modo que la longitud de la lista aumenta en uno, mientras que extends() agrega todos los elementos de la lista pasados ​​como argumento uno por uno al final de la lista original.

Python3

ugly_list = [10,12,36,[41,59,63],[77],81,93]
flat = []
for i in ugly_list:
    if isinstance(i, list): flat.extend(i)
    else: flat.append(i)
print(flat)

Estos fueron algunos fragmentos de código de Python que se usan regularmente si está trabajando con el lenguaje de programación Python. ¡Espero que hayas encontrado estos útiles!

Publicación traducida automáticamente

Artículo escrito por vanigupta20024 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *