Germán Mallo

0 %
Germán Mallo
Data Scientist
  • Residencia:
    España
  • City:
    Valencia
  • Age:
    20
Español
Inglés
Valenciano
Python
R
Photoshop
WordPress
Wondershare Filmora
SQL
  • Advanced Knowledge in Statistics
  • UPV Student
  • GIT knowledge

Guía de “Pro Tips” para principiantes en Python.

06/05/2024

[TIP 1] Múltiples condiciones en una línea

Para hacer condiciones tipo “if”, se puede hacer de una forma mucho más elegante y en una línea de la siguiente forma:

  • En vez de hacer esto:
if a == 3:
    print(a)
else:
    print(b)
  • Puedes hacer esto:
print(a) if a == 3 else print(b)

[TIP 2] Comparar dos listas en una línea

Poner explicación:

  • En vez de hacer esto para comparar dos listas:
h = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
list = [1, 2, 3, 4, 5, 6, 9, 10]

r = []
for elem in h:
    if elem in list:
        r.append(elem)
# r = [1, 2, 3, 4, 5, 6, 9, 10]
  • Puedes hacer esto:
h = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
list = [1, 2, 3, 4, 5, 6, 9, 10]

r = [elem for elem in h if elem in list]
# r = [1, 2, 3, 4, 5, 6, 9, 10]

[TIP 3] Comprobación de variables de forma más “pythonic”.

Si tengo dos variables y quiero que me devuelva la que no es None, en vez de hacer esto:

````python
a = None
b = 2
if a:
    print(a)
else:
    print(b)
````
Printea 2

Haz mejor esto:

````python
a = None
b = 2
print(a or b)
````
Printea 2

[TIP 4] Objetos tipo queue en Python (Librería collections).

Si queremos hacer una cola de objetos, en vez de crear una lista y tratarla como tal, podemos importar la libreria collections y usar el objeto queue que nos ofrece.

from collections import deque

Estas son las principales diferencias entre una lista y una cola:

  • Acceso a elementos:
    • En una lista, puedes acceder a elementos por su índice, y eliminar o insertar elementos en cualquier posición.
    • En una cola, solo puedes acceder al primer elemento, y solo puedes eliminar o insertar elementos por el final de la cola.
  • Operaciones eficientes:
    • Las colas (deque) están optimizadas para operaciones de agregar y quitar elementos tanto al principio como al final. Las operaciones popleft() y pop() son eficientes, al igual que append() y appendleft().
    • En una lista, agregar o quitar elementos al principio es menos eficiente, ya que implica desplazar todos los elementos restantes.
  • Uso específico:
    • Las colas son útiles cuando necesitas seguir el principio de “primero en entrar, primero en salir” (FIFO). Es decir, el primer elemento que se agrega es el primero en ser eliminado.
    • Las listas son más versátiles y se utilizan para una variedad de propósitos, ya que admiten operaciones en cualquier posición y son más adecuadas cuando el orden exacto de los elementos es crucial. En resumen, mientras que una cola (deque) comparte algunas similitudes con una lista, está optimizada para ciertos escenarios, como la gestión eficiente de elementos en el principio y el final de la secuencia.
from collections import deque

queue = deque()

queue.append(1)
queue.append(2)
queue.append(3)

print(queue) # deque([1, 2, 3])

queue.popleft()
print(queue) # deque([2, 3])

queue.pop()
print(queue) # deque([2])
Posted in Guías, Pro Tips, Programación, PythonTags: