Physics.Math.Code
146K subscribers
5.29K photos
2.47K videos
5.79K files
4.84K links
VK: vk.com/physics_math
Чат инженеров: @math_code
Учебные фильмы: @maths_lib
Репетитор IT mentor: @mentor_it
YouTube: youtube.com/c/PhysicsMathCode

Обратная связь: @physicist_i
Download Telegram
🖥 Помните предыдущие два поста про примитивные callback-функции и фильтрующие функции? Может возникнуть вопрос, а можно ли, реализовать свой аналог reduce() ?

Давайте сразу напишем такой пример:
numbers = [1, 11, 12, 13, 18, 9, 8, 6]

from functools import reduce

func = lambda acc, cur : acc + cur

total = reduce(func, numbers, 0)
print('Встроенная reduce: ',total)

def _reduce(callback, collection, init = 0):
acc = init
for k in collection:
acc = callback(acc, k)
return acc

_total = _reduce(func, numbers)
print('Моя reduce: ',_total)


Теперь объясним параметры и работу конструкции:
result = reduce( function, iterable[, initializer] ) :
▫️function — функция, применяемая к элементам итерации. Она должна принимать два аргумента.
▫️iterable — итерируемый объект, элементы которого вы хотите уменьшить. Это может быть список, кортеж или любой другой итерируемый объект.
▫️initializer — (необязательно): начальное значение аккумулятора (накопителя). Оно используется в качестве первого аргумента при первом вызове функции, если оно предусмотрено.

⚠️ Обработка пустых итераций: Одной из распространенных ошибок при использовании функции reduce() является обработка пустых итераций. Передача пустой итерации в reduce() без инициализатора вызывает Ошибку типа поскольку нет начального значения для запуска процесса сокращения. Чтобы избежать этого, всегда указывайте инициализатор, когда итерируемый объект может быть пустым.

⚙️ Производительность:
▫️ Эффективность reduce() по сравнению с циклами: Функция reduce() может быть более эффективной, чем явные циклы, потому что она реализована на C, что может обеспечить преимущества в производительности. Однако это преимущество часто незначительно и зависит от сложности применяемой функции.
▫️Преимущества использования встроенных функций в производительности: Встроенные функции, такие как sum(), min(), и max() высоко оптимизированы с точки зрения производительности. Они реализованы на C и могут выполнять операции быстрее, чем эквивалентный код Python с использованием reduce().

🖥 Зачем разработчикам нужна функция reduce() ? Функция reduce() полезна при итеративной обработке данных, избегая явных циклов и делая код более читаемым и кратким. Некоторые распространенные варианты использования включают:
▫️ Суммирование чисел в списке: Быстрое суммирование всех элементов.
▫️ Умножение элементов итеративного элемента: Вычисление произведения элементов.
▫️ Объединение строк: Объединение нескольких строк в одну.
▫️ Нахождение максимального или минимального значения: Определение самого большого или самого маленького элемента в последовательности.

#python #разработка #программирование #IT #алгоритмы

💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42👨‍💻85🤨4🔥3👾2
🐍 Циклы и их прерывания в Python: алгоритм поиска в строке

Это заметка будет для начинающих, которые только знакомятся с программированием, информатикой и с языком Python, в частности. Вчера мы с учеником изучали циклы и некоторые операторы, которые дают возможность управлять циклами. В этой небольшой статье я покажу несколько примеров. При этом от совсем простых абстракций постараемся углубиться в более полезные вещи с практической точки зрения. [ Уровень сложности: ~7..8 класс ]

👨🏻‍💻 Читать заметку полностью

#python #алгоритмы #информатика #программирование #циклы

💡 Репетитор IT mentor // @mentor_it
Please open Telegram to view this post
VIEW IN TELEGRAM
👍388😢3🗿32🔥2
Algorithms_for_image_processing_and_computer_vision_2010_J_R_Parker.pdf
7.1 MB
📙 Algorithms for image processing and computer vision [2010] J. R. Parker
📙 Алгоритмы для обработки изображений и компьютерного зрения [2010] Дж. Р . Паркер


Благодаря достижениям в области компьютерного оборудования и программного обеспечения были разработаны алгоритмы, которые поддерживают сложную обработку изображений, не требуя обширных знаний в области математики. Этот бестселлер был полностью обновлен с учетом новейших разработок, включая методы 2D-визуализации при поиске по контенту и использование графических карт в качестве вычислительных средств для обработки изображений. Это идеальный справочник для инженеров-программистов и разработчиков программного обеспечения, продвинутых программистов, графиков, ученых и других специалистов, которым требуется узкоспециализированная обработка изображений.

▪️ В настоящее время существуют алгоритмы для широкого спектра сложных приложений обработки изображений, которые требуются инженерам-программистам и разработчикам программного обеспечения, продвинутым программистам, программистам-графологам, ученым и смежным специалистам.

▪️ Этот бестселлер был полностью обновлен, чтобы включить в него новейшие алгоритмы, в том числе методы 2D-визуализации при поиске по контенту, подробную информацию о современных методах классификации и графических картах, используемых в качестве вычислительных средств для обработки изображений.

▪️ Экономит часы математических вычислений за счет использования распределенной обработки и программирования на графическом процессоре и предоставляет специалистам, не являющимся математиками, кратчайшие пути, необходимые для программирования относительно сложных приложений.

"Алгоритмы для обработки изображений и компьютерного зрения", 2-е издание, содержит инструменты для ускорения разработки приложений для обработки изображений.

#компьютерное_зрение #python #computer_vision #программирование #машинное_обучение #искусственный_интеллект #cpp #робототехника

💡 Physics.Math.Code // @physics_lib
👍36🔥96🤯21😍1👨‍💻1🗿1
📗 Python. Исчерпывающее руководство [2023] Бизли Д.
📙
Python Distilled [2021] David Beazley

💵 Купить книгу

💾 Скачать книгу

📖 Напоминаю, что Вы можете купить книгу в бумаге! Для наших подписчиков лучшие условия.
-35% по промокоду: MATH CODE
💡 Подробности тут

"This is a pragmatic book that presents some of the most important topics about the Python programming language in a concise form, designed to make it easier to find out the most relevant information bits in a context where resources abound and frequently are just too overwhelming."
―Victor Domingos, Software Developer, Slim Business Solutions, The No Title® Tech Blog
#python #программирование

💡 Physics.Math.Code // @physics_lib
19👍16🔥7🥰1
🖥 Программируем на Python, 3-е издание (+CD) [2014] Майкл Доусон [RU + EN]

💾 Скачать RU + EN

💳 Купить RU книгу за 2025

Промокод на - 35 % : MATH CODE

Майкл Доусон — автор книг по программированию, а также преподаватель, обучающий созданию компьютерных игр. Доусон получил степень бакалавра компьютерных наук в Университете Южного Калифорнии. Работал как программистом, так и дизайнером и продюсером компьютерных игр. Разрабатывал и читал курсы по программированию игр на факультете UCLA Extension в Калифорнийском университете Лос-Анджелеса, а также в Академии цифровых и медиатехнологий (DMA) и в Кинематографической школе Лос-Анджелеса.

▪️ «Программируем на Python». Пособие для начинающих изучать Python, учит фундаментальным принципам программирования на примере создания простых игр.

▪️ «Изучаем C++ через программирование игр». Помогает освоить разработку игр с самых азов, каждая глава описывает самостоятельный игровой проект.
#python #программирование #разработка #IT

💡 Physics.Math.Code // @physics_lib
Please open Telegram to view this post
VIEW IN TELEGRAM
24👍18🔥10
Программируем_на_Python_Майкл_Доусон_RU+EN.zip
75.9 MB
🖥 Программируем на Python, 3-е издание (+CD) [2014] Майкл Доусон [RU + EN]

Эта книга - идеальное пособие для начинающих изучать Python. Руководство, написанное опытным разработчиком и преподавателем, научит фундаментальным принципам программирования на примере создания простых игр. Вы приобретете необходимые навыки для разработки приложений на Python и узнаете, как их применять в реальной практике.

Для лучшего усвоения материала в книге приведено множество примеров программного кода. В конце каждой главы вы найдете проект полноценной игры, иллюстрирующий ключевые идеи изложенной темы, а также краткое резюме пройденного материала и задачи для самопроверки. Прочитав эту книгу, вы всесторонне ознакомитесь с языком Python, усвоите базовые принципы программирования и будете готовы перенести их на почву других языков, за изучение которых возьметесь. Научитесь программировать на Python играючи.

Прилагаемый к книге диск содержит исходные коды и дополнения с сайта поддержки. В папке py3e_source содержится исходный код всех законченных программ, которые представлены в этой книге, и вспомогательные файлы к ним. А папка py3e_software включает в себя файлы всех программных пакетов, упомянутых в книге, (установочный файл Python 3.1.1 для Windows, мультимедийный пакет pygame версии 1.9.1, совместимый с Python 3.1.х под Windows и игровой движок livewires).

Python programming for the absolute beginner: Michael Dawson
#python #программирование #разработка #IT

💡 Physics.Math.Code // @physics_lib
Please open Telegram to view this post
VIEW IN TELEGRAM
37👍25🔥12👨‍💻1🙈1