Preguntas etiquetadas con python-internals

¿Cómo funciona Python debajo del capó? Utilícelo para preguntas relacionadas (por ejemplo) con las decisiones de diseño tomadas y las estructuras de datos internos y los algoritmos utilizados.







1
¿Por qué str.translate es mucho más rápido en Python 3.5 en comparación con Python 3.4?
Estaba tratando de eliminar los caracteres no deseados de una cadena dada usando text.translate()Python 3.4. El código mínimo es: import sys s = 'abcde12345@#@$#%$' mapper = dict.fromkeys(i for i in range(sys.maxunicode) if chr(i) in '@#$') print(s.translate(mapper)) Funciona como se esperaba. Sin embargo, el mismo programa cuando se ejecuta en Python …





4
¿Cuándo es hash (n) == n en Python?
He estado jugando con la función hash de Python . Para enteros pequeños, aparece hash(n) == nsiempre. Sin embargo, esto no se extiende a grandes cantidades: >>> hash(2**100) == 2**100 False No me sorprende, entiendo que el hash toma un rango finito de valores. ¿Cuál es ese rango? Intenté usar …


3
¿Por qué max es más lento que sort?
Descubrí que maxes más lento que la sortfunción en Python 2 y 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 Python …

2
¿Cuándo se actualizan los archivos .pyc?
Entiendo que los archivos ".pyc" son versiones compiladas de los archivos ".py" de texto plano, creados en tiempo de ejecución para que los programas se ejecuten más rápido. Sin embargo, he observado algunas cosas: Tras la modificación de archivos "py", el comportamiento del programa cambia. Esto indica que los archivos …

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.