Le mélange aléatoire de Python : pourquoi le retour non apparent ?
Lors de l'utilisation de la fonction random.shuffle de Python, on peut être perplexe de le voir retourner Aucun. Ce comportement découle de sa nature sur place.
Contrairement aux fonctions qui renvoient la structure de données transformée après modifications, random.shuffle modifie directement la liste d'entrée. Par conséquent, il renvoie None pour indiquer qu'aucune valeur explicite n'est renvoyée.
Pour illustrer, considérons le code suivant :
x = ['foo', 'bar', 'black', 'sheep'] random.shuffle(x) print(x)
Lors de l'exécution de ce code, la liste x sera mélangée dans -place, mais la fonction random.shuffle elle-même ne renverra aucune valeur. Par conséquent, l'instruction d'impression affichera la liste maintenant mélangée.
Si vous désirez une nouvelle liste mélangée sans modifier l'original, vous pouvez utiliser des méthodes alternatives :
Comprenez que même si random.sample a une complexité O(N), sorted a une complexité O(N log N) en raison du tri sous-jacent opération.
En comprenant le comportement sur place de random.shuffle et en utilisant des méthodes alternatives si nécessaire, vous pouvez contrôler efficacement la façon dont vous gérez les opérations de brassage de listes en Python.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!