Tous uniques

La méthode suivante vérifie si la liste donnée contient des éléments en double. Il utilise la propriété de set() qui supprime les éléments en double de la liste.

def all_unique(lst):
    return len(lst) == len(set(lst))


x = [1,1,2,2,3,2,3,4,5,6]
y = [1,2,3,4,5]
all_unique(x) # False
all_unique(y) # True

Anagrammes

Cette méthode peut être utilisée pour vérifier si deux chaînes sont des anagrammes. Une anagramme est un mot ou une phrase formé en réarrangeant les lettres d’un mot ou d’une phrase différent, généralement en utilisant toutes les lettres originales exactement une fois.

from collections import Counter

def anagram(first, second):
    return Counter(first) == Counter(second)


anagram("abcd3", "3acdb") # True

Mémoire

Cette astuce peut être utilisé pour vérifier l'utilisation de la mémoire d'un objet.

import sys 

variable = 30 
print(sys.getsizeof(variable)) # 24

Taille en octets

Cette méthode retourne la longueur d'une chaîne en octets.

def byte_size(string):
    return(len(string.encode('utf-8')))
    
    
byte_size('😀') # 4
byte_size('Hello World') # 11    

Imprimer une chaîne N fois

Cette astuce peut être utilisé pour imprimer une chaîne n fois sans avoir à utiliser de boucles pour le faire.

n = 2; 
s ="Programming"; 

print(s * n); # ProgrammingProgramming

Capitaliser les premières lettres

Cette astuce utilise simplement la méthode title() pour mettre en majuscule les premières lettres de chaque mot d'une chaîne.

s = "programming is awesome"

print(s.title()) # Programming Is Awesome

Morcèlement (Chunk)

Cette méthode divise une liste en listes plus petites d'une taille spécifiée.

def chunk(list, size):
    return [list[i:i+size] for i in range(0,len(list), size)]

Compact

Cette méthode supprime les "valeurs de fausseté" (falsy value) (False, None, 0 et “”) d’une liste à l’aide de filter ().

def compact(lst):
    return list(filter(None, lst))
  
  
compact([0, 1, False, 2, '', 3, 'a', 's', 34]) # [ 1, 2, 3, 'a', 's', 34 ]

Transposition 2D

Cette astuce peut être utilisé pour transposer un tableau 2D.

array = [['a', 'b'], ['c', 'd'], ['e', 'f']]
transposed = zip(*array)
print(transposed) # [('a', 'c', 'e'), ('b', 'd', 'f')]

Comparaison chaînée

Vous pouvez effectuer plusieurs comparaisons avec tous les types d’opérateurs sur une même ligne.

a = 3
print( 2 < a < 8) # True
print(1 == a < 2) # False