Articles of rendimiento de

Python: rendimiento y asignación de rendimiento

¿Cómo funciona este código, que involucra la asignación y el operador de rendimiento? Los resultados son bastante confusos. def test1(x): for i in x: _ = yield i yield _ def test2(x): for i in x: _ = yield i r1 = test1([1,2,3]) r2 = test2([1,2,3]) print list(r1) print list(r2) Salida: [1, None, 2, None, […]

Python copia archivo más grande demasiado lento

Estoy intentando copiar un archivo grande (> 1 GB) desde el disco duro a la unidad USB utilizando shutil.copy . Un guión simple que describe lo que estoy tratando de hacer es: import shutil src_file = “source\to\large\file” dest = “destination\directory” shutil.copy(src_file, dest) Se tarda solo 2-3 minutos en linux. Pero la misma copia de archivo […]

¿Por qué mi progtwig Python tiene un promedio de solo 33% de CPU por proceso? ¿Cómo puedo hacer que Python use toda la CPU disponible?

Yo uso Python 2.5.4. Mi computadora: CPU AMD Phenom X3 720BE, Mainboard 780G, 4GB de RAM, Windows 7 32 bit. Utilizo el subproceso de Python pero no puedo hacer que todos los procesos de python.exe consumn el 100% de la CPU. ¿Por qué están usando solo alrededor de 33-34% en promedio? Deseo dirigir todos los […]

El método más eficiente para verificar si existe una clave de diccionario y procesar su valor si existe

MyDict = {‘key1′:’value1’, ‘key2′:’value2’} Puedo hacer esto de algunas maneras: if ‘key1’ in MyDict: var1 = MyDict[‘key1’] o if MyDict.has_key(‘key1’): var1 = MyDict[‘key1’] o if MyDict[‘key1’]: var1=MyDict[‘key1’] o try: var1=MyDict[‘key1] except KeyError, e: pass o probé algo como esto pero NO FUNCIONA como esto en python if v=MyDict.get(‘key1’): var1=v Y es probable que descubramos muchas […]

El tiempo de ejecución de la función de rest (%) en arrays numpy es mucho más largo que el cálculo del rest manual

En los últimos días, he estado trabajando para mejorar el tiempo de ejecución de una función de python que requiere muchos usos de la función de rest (%) entre otras cosas. Mi caso de prueba principal es sobre una matriz numpy de 80,000 elementos (monótonamente creciente), con 10000 iteraciones, aunque también he probado en varios […]

¿Es mejor usar una excepción o un código de retorno en Python?

Es posible que conozca esta recomendación de Microsoft sobre el uso de excepciones en .NET: Consideraciones de rendimiento … Lanzar excepciones solo por condiciones extraordinarias, … Además, no lance una excepción cuando un código de retorno sea suficiente … (Consulte el texto completo en http://msdn.microsoft.com/en-us/library/system.exception.aspx ). Como punto de comparación, ¿recomendaría lo mismo para el […]

¿El registro de Python vacía cada registro?

Cuando escribo un registro en un archivo utilizando el registro del módulo estándar, ¿cada registro se vaciará en el disco por separado? Por ejemplo, ¿el siguiente código se vaciará el registro 10 veces? logging.basicConfig(level=logging.DEBUG, filename=’debug.log’) for i in xrange(10): logging.debug(“test”) Si es así, ¿disminuirá la velocidad?

Numpy: transforma la matriz 2D de las coordenadas x, y en una matriz plana de distancia entre las coordenadas

Me gustaría usar numpy para convertir una matriz 2D de coordenadas x, y en una matriz plana de distancia de cada coordenada entre las anteriores. Tenga en cuenta que el primer par de coordenadas x / y debe mantenerse en la matriz de salida como referencia para reconstruir las coordenadas más adelante. El objective de […]

Python: expresión generadora vs. rendimiento

En Python, ¿hay alguna diferencia entre crear un objeto generador a través de una expresión generadora y usar la statement de rendimiento ? Utilizando el rendimiento : def Generator(x, y): for i in xrange(x): for j in xrange(y): yield(i, j) Usando la expresión del generador : def Generator(x, y): return ((i, j) for i in […]

Python: Determine si una lista sin clasificar está contenida en una ‘lista de listas’, independientemente del orden de los elementos

Tengo una pregunta similar a esta pregunta: ¿ Determinar si 2 listas tienen los mismos elementos, independientemente del orden? ¿Cuál es la manera mejor / más rápida de determinar si una lista sin clasificar1 está contenida en una ‘lista de listas’ myListOfLists , sin importar el orden de los elementos en la list1 ? Mi […]