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 слични објави

Пребарај: #longtermplanreview

当前筛选 #longtermplanreview清除筛选
MND Singapore

@mndsingapore · Post #341 · 10.06.2022 г., 09:45

Besides providing our basic need for shelter, our living environment can also encourage interactions among residents, build a sense of belonging, foster vibrant communities, and promote healthy lifestyles. To meet the growing needs and diverse aspirations of Singaporeans, we need to continuously transform our built environment to accommodate these shifts. For instance, we will pilot assisted living housing options to care for an ageing population. To find out more about our land use plans and strategies, visit the Long-Term Plan Review exhibition: ➡️ Now till 4 August 2022 📍 At the URA Centre ➡️ More info: go.gov.sg/ltprexhibit #LTPR2021#Longtermplanreview#Publichousing

MND Singapore

@mndsingapore · Post #344 · 17.06.2022 г., 11:57

To provide more jobs closer to homes and sustain Singapore’s competitiveness, we will continue to build up our islandwide polycentres and rejuvenate the city centre. Among the initiatives, the city centre will be transformed into a more mixed-use and vibrant precinct, to support the evolving nature and modalities of work, to meet the varied needs of modern lifestyles. We will also introduce a wider range of amenities and lifestyle offerings, as well as more residential options. For more on how we plan our land use to support businesses in adapting their operations to fast-changing economic trends, visit go.gov.sg/ltprexhibit, or visit the Long-Term Plan Review exhibition: ➡️ Now till 27 August 2022 ➡️ At The URA Centre #LTPR2021#longtermplanreview#singaporecity