Questions marquées «python-internals»

Comment fonctionne Python sous le capot? À utiliser pour les questions relatives (par exemple) aux décisions de conception prises et aux structures de données internes et aux algorithmes utilisés.







1
Pourquoi str.translate est-il beaucoup plus rapide dans Python 3.5 par rapport à Python 3.4?
J'essayais de supprimer les caractères indésirables d'une chaîne donnée en utilisant text.translate()Python 3.4. Le code minimal est: import sys s = 'abcde12345@#@$#%$' mapper = dict.fromkeys(i for i in range(sys.maxunicode) if chr(i) in '@#$') print(s.translate(mapper)) Cela fonctionne comme prévu. Cependant, le même programme lorsqu'il est exécuté en Python 3.4 et Python …





4
Quand est hash (n) == n en Python?
J'ai joué avec la fonction de hachage de Python . Pour les petits entiers, il apparaît hash(n) == ntoujours. Cependant, cela ne s'étend pas aux grands nombres: >>> hash(2**100) == 2**100 False Je ne suis pas surpris, je comprends que le hachage prend une plage finie de valeurs. Quelle est …

1
Pourquoi tuple (set ([1, “a”, “b”, “c”, “z”, “f”])) == tuple (set ([“a”, “b”, “c”, «Z», «f», 1])) 85% du temps avec la randomisation de hachage activée?
Étant donné la réponse de Zero Piraeus à une autre question , nous avons cela x = tuple(set([1, "a", "b", "c", "z", "f"])) y = tuple(set(["a", "b", "c", "z", "f", 1])) print(x == y) Imprime Trueenviron 85% du temps avec la randomisation de hachage activée. Pourquoi 85%?

3
Pourquoi max est-il plus lent que le tri?
J'ai trouvé que maxc'est plus lent que la sortfonction en Python 2 et 3. Python 2 $ python -m timeit -s 'import random;a=range(10000);random.shuffle(a)' 'a.sort();a[-1]' 1000 loops, best of 3: 239 usec per loop $ python -m timeit -s 'import random;a=range(10000);random.shuffle(a)' 'max(a)' 1000 loops, best of 3: 342 usec per loop …

2
Quand les fichiers .pyc sont-ils actualisés?
Je comprends que les fichiers ".pyc" sont des versions compilées des fichiers ".py" en texte brut, créés au moment de l'exécution pour accélérer l'exécution des programmes. Cependant, j'ai observé quelques choses: Lors de la modification des fichiers "py", le comportement du programme change. Cela indique que les fichiers "py" sont …

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.