TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #32 · 7 фев.

Скорее всего уже слышали, что складывать строки через + это плохая практика. Падение производительности, и всё такое. Без лишних слов, давайте измерять: from timeit import timeit def t1(): # складываем 10 строк через + из переменной t = 'text' for _ in range(1000): s = t + t + t + t + t + t + t + t + t def t2(): # склеиваем список строк через метод join arr = ['text'] * 10 for _ in range(1000): s = ''.join(arr) def t3(): # складываем через + но не из переменной а непосредственно инлайн объекты for _ in range(1000): s = 'text' + 'text' + 'text' + ... # всего 10 раз Теперь каждую строку склейки запустим по 10М раз >>> timeit(t1, number=10000) 0.21951690399964718 >>> timeit(t2, number=10000) 1.4978306379998685 >>> timeit(t3, number=10000) 0.2213820789993406 Хм, а нам говорили что через "+" это плохо и медленно ))) 😁 Тут стоит учитывать, что речь идёт о склейке множества длинных строк. Давайте изменим условия: def t4(): t = 'text'*100 for _ in range(1000): s = t + t + t + t + t + t + t + t + t def t5(): arr = ['text'*100] * 10 for _ in range(1000): s = ''.join(arr) def t6(): for _ in range(1000): s = 'text'*100 + 'text'*100 + ... # всего 10 раз >>> timeit(t4, number=10000) 12.795130728000004 >>> timeit(t5, number=10000) 2.642637542999182 >>> timeit(t6, number=10000) 0.2184546610005782 Вот, уже другой разговор, сразу видна разница, в среднем в 6 раз. Но погодите, почему последний тест t6() по скорости такой же как и t3()? Ведь строки теперь в 100 раз длиннее! Это вопросы оптимизации кода, какие простые изменения ускоряют или замедляют выполнение программы. Мы столкнулись с примером обхода обращения к переменной. Например, именно так работает директива #define в С++, во время компиляции подставляя значение переменной вместо ссылки на неё. В Python это тоже работает, но часто ли вы сможете встретить такой способ работы со строками? К сожалению, способ почти только теоретический. В целом, тесты показали то, что мы хотели. Делаем выводы самостоятельно. Полный листинг 🌍 #tricks

Резултати

Пронајдени 2 слични објави

Пребарај: #andrésvalerocastells

当前筛选 #andrésvalerocastells清除筛选
🎼 CLÁSICA AL ATARDECER 🎻

@ClasicaAlAtardecer · Post #6330 · 02.09.2023 г., 15:00

#Suite2#Jazz#Shostakovich#AndrésValeroCastells Titulo:La Suite para orquesta de jazz n.º 2 Autor:Dmitri Shostakóvich Movimientos: 🎵I.Scherzo- Allegretto allá marcia 🎵 II. Canción de embalar -Andante 🎵 III. Serenata Allegretto Interpretación: Banda Municipal de Música de A Coruña. Director: Andrés Valero-Castells Fuente:🎼 @ClasicaAlAtardecer

🎼 CLÁSICA AL ATARDECER 🎻

@ClasicaAlAtardecer · Post #6329 · 02.09.2023 г., 15:00

​​#Suite2#Jazz#Shostakovich#AndrésValeroCastells SUITE PARA ORQUESTA DE JAZZ N.º 2 La Suite para orquesta de jazz n.º 2, es una suite compuesta por Dmitri Shostakóvich en 1938 para la recién fundada State Jazz Orchestra de Victor Knushevitsky, y estrenada el 28 de noviembre de 1938 en la radio de Moscú por la misma orquesta. La partitura original se perdió durante la Segunda Guerra Mundial, pero una versión para piano fue redescubierta en 1999 por Manashir Yakubov. Los tres movimientos de la suite fueron posteriormente reconstruidos y orquestados por Gerard McBurney, y estrenados en los Proms de la BBC del año 2000. La suite, en su forma reconstruida, incluye los siguientes movimientos: 🎵I.Scherzo- Allegretto allá marcia 🎵 II. Canción de embalar - Andante 🎵 III. Serenata Allegretto Durante mucho tiempo, otra suite de Shostakóvich fue conocida (y grabada) como la Suite para orquesta de jazz n.º 2. La partitura de Shostakovich incluye una alegre obertura, varias canciones diegéticas, fanfarrias y dos breves secuencias con la música del Vals No. 2 reproducida por un altavoz. El primero ocurre en los primeros minutos cuando los voluntarios que llegan bailan en medio de una tormenta de nieve. Su repetición se produce durante una celebración estival de la finalización de las primeras viviendas permanentes. La “variedad” en la orquestación proviene de la inclusión de instrumentos asociados con una banda de baile: cuatro saxofones, guitarra y acordeón, creando una atmósfera informal, parecida a la de un circo. Siguiendo la forma tradicional de vals ABA, las secciones exteriores están principalmente en do menor y la sección central (en dos episodios cortos) en mi bemol mayor y la bemol mayor. Una sensación de inestabilidad resulta del cambio sutil entre estas tonalidades relacionadas, al igual que el contraste entre el tema principal ligero, suave e irresistible (con prominentes descansos de negra en la última frase) y la oscuridad subyacente del acompañamiento circundante. Un ritmo irónico de “oom-pah-pah” late en el contrabajo y la caja. El saxofón alto anuncia el tema sencillo y melancólico al principio, que luego pasa a los trompetistas. Para el público en general, el pequeño Vals No. 2, modesto y ligeramente lascivo, se ha convertido en una de las composiciones más reconocibles (y con más frecuencia reorganizadas) de Shostakovich. Su fama se disparó cuando Stanley Kubrick lo utilizó con brillante efecto durante los momentos iniciales de su última película, Eyes Wide Shut (1999), un drama de misterio psicológico erótico protagonizado por Tom Cruise y Nicole Kidman. @ClasicaAlAtardecer