Производная ☠️
Производная функции показывает скорость изменения этой функции. Проще говоря, она говорит нам, насколько быстро функция меняется в определенной точке.
Представьте, что функция описывает пробег автомобиля. Производная этой функции в данной точке будет показывать скорость автомобиля в этот момент времени.
Хоть производные и могут показаться далекими от нашей обыденной жизни, они на самом деле используются во многих областях:
Физика:
• Производная используется для расчета скорости, ускорения, силы и других важных физических величин.
• Инженеры используют производные для проектирования мостов, зданий и самолетов.
• Физики - для изучения движения планет и поведения атомов.
Экономика:
• Производная используется для оптимизации прибыли, минимизации затрат и анализа рыночных тенденций.
• Компании используют производные, чтобы определить, какое количество продукции им следует производить, чтобы максимизировать прибыль.
Биология:
• Производная используется для моделирования роста популяций, распространения инфекций и химических реакций в живых организмах.
• Ученые используют производные, чтобы изучать, как распространяются эпидемии, и как лекарственные препараты воздействуют на организм.
Инженерия:
• Производная используется для оптимизации формы объектов, проектирования систем управления и анализа данных.
• Например, инженеры используют производные, чтобы проектировать аэродинамичные автомобили, создавать эффективные системы кондиционирования воздуха и разрабатывать надежные системы управления.
Вот несколько примеров того, как производные используются в реальной жизни:
GPS-навигаторы:
•Используют производные, чтобы определить кратчайший маршрут и вычислить время в пути.
Медицинские изображения:
• Производные используются для улучшения качества МРТ и других изображений, полученных с помощью медицинских приборов.
Финансовые рынки:
• Аналитики используют производные для прогнозирования изменения цен на акции, облигации и другие финансовые инструменты.
Робототехника:
• Производные используются для управления движениями роботов и обеспечения их точности.
Раскидаем формулы производных некоторых элементарных функций:
1. Постоянная:
Производная константы
2. Степенная функция:
Производная функции
3. Экспоненциальная функция:
Производная функции
4. Тригонометрические функции:
• Производная функции
• Производная функции
• Производная функции
Отметим, что:
#статья 📚
Производная функции показывает скорость изменения этой функции. Проще говоря, она говорит нам, насколько быстро функция меняется в определенной точке.
Представьте, что функция описывает пробег автомобиля. Производная этой функции в данной точке будет показывать скорость автомобиля в этот момент времени.
Хоть производные и могут показаться далекими от нашей обыденной жизни, они на самом деле используются во многих областях:
Физика:
• Производная используется для расчета скорости, ускорения, силы и других важных физических величин.
• Инженеры используют производные для проектирования мостов, зданий и самолетов.
• Физики - для изучения движения планет и поведения атомов.
Экономика:
• Производная используется для оптимизации прибыли, минимизации затрат и анализа рыночных тенденций.
• Компании используют производные, чтобы определить, какое количество продукции им следует производить, чтобы максимизировать прибыль.
Биология:
• Производная используется для моделирования роста популяций, распространения инфекций и химических реакций в живых организмах.
• Ученые используют производные, чтобы изучать, как распространяются эпидемии, и как лекарственные препараты воздействуют на организм.
Инженерия:
• Производная используется для оптимизации формы объектов, проектирования систем управления и анализа данных.
• Например, инженеры используют производные, чтобы проектировать аэродинамичные автомобили, создавать эффективные системы кондиционирования воздуха и разрабатывать надежные системы управления.
Вот несколько примеров того, как производные используются в реальной жизни:
GPS-навигаторы:
•Используют производные, чтобы определить кратчайший маршрут и вычислить время в пути.
Медицинские изображения:
• Производные используются для улучшения качества МРТ и других изображений, полученных с помощью медицинских приборов.
Финансовые рынки:
• Аналитики используют производные для прогнозирования изменения цен на акции, облигации и другие финансовые инструменты.
Робототехника:
• Производные используются для управления движениями роботов и обеспечения их точности.
Раскидаем формулы производных некоторых элементарных функций:
1. Постоянная:
Производная константы
c равна нулю:(c)' = 0
2. Степенная функция:
Производная функции
x^n, где n - любое действительное число, кроме 1, равна n*x^(n-1):(x^n)' = n*x^(n-1)
3. Экспоненциальная функция:
Производная функции
e^x равна e^x :(e^x)' = e^x
4. Тригонометрические функции:
• Производная функции
sin(x) равна cos(x):
(sin(x))' = cos(x)
• Производная функции
cos(x) равна -sin(x):
(cos(x))' = -sin(x)
• Производная функции
tan(x) равна 1/cos^2(x):
(tan(x))' = 1/cos^2(x)
Отметим, что:
Формулы выше — базовые🚶 . Для сложных случаев есть правила дифференцирования. Их полное описание можно найти в учебниках по матанализу🔍 .
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥9🤯3 3⚡1 1
Вода по интегралам 🦌
В математике интегралы – это фундаментальное понятие, тесно связанное с дифференцированием😎 . Если дифференцирование позволяет нам измерять скорость изменения функции, то интегрирование – это обратная операция 😡 .
Проще говоря, интегрирование помогает нам найти:
На первый взгляд интегралы могут показаться далекими от реальной жизни, но на самом деле их используются во многих областях:
Физика:
Инженерия:
Экономика:
Биология:
Искусственный интеллект:
Это не все примеры. Интегралы также используются во многих других науках и дисциплинах, таких как химия, геология, метеорология и так далее⌨️ .
Теперь давайте посмотрим на пару примеров использования интегралов в реальной технике и прикладных задачах:
GPS-навигация:
МРТ:
Авиастроение:
Финансы:
#статья 📚
В математике интегралы – это фундаментальное понятие, тесно связанное с дифференцированием
Проще говоря, интегрирование помогает нам найти:
• Площадь под кривой функции.
• Общий объем фигуры, вращающейся вокруг оси.
• Суммарное изменение функции за определенный промежуток времени.
На первый взгляд интегралы могут показаться далекими от реальной жизни, но на самом деле их используются во многих областях:
Физика:
• Расчет траекторий движения объектов.
• Анализ работы двигателей, электронных устройств и других систем.
• Изучение законов механики, термодинамики и электромагнетизма.
Инженерия:
• Проектирование мостов, зданий и других сооружений.
• Разработка автомобилей, самолетов и других транспортных средств.
• Создание систем связи, электроснабжения и других инженерных систем.
Экономика:
• Анализ спроса и предложения на товары и услуги.
• Оценка рисков и прибыли инвестиций.
• Оптимизация использования ресурсов и производственных процессов.
Биология:
• Моделирование роста популяций и распространения болезней.
• Анализ данных медицинских исследований.
• Разработка новых лекарств и методов лечения.
Искусственный интеллект:
• Обучение машин распознавать образы и делать прогнозы.
• Создание систем автономного управления и робототехники.
• Анализ больших объемов данных.
Это не все примеры. Интегралы также используются во многих других науках и дисциплинах, таких как химия, геология, метеорология и так далее
Теперь давайте посмотрим на пару примеров использования интегралов в реальной технике и прикладных задачах:
GPS-навигация:
• Спутники GPS используют интегралы для расчета своего положения и расстояния до пользователя.
МРТ:
• Магнитно-резонансная томография использует интегралы для создания изображений внутренних органов человека.
Авиастроение:
• Инженеры используют интегралы для проектирования крыльев самолетов, которые максимально эффективны в полете.
Финансы:
• Аналитики используют интегралы для оценки стоимости финансовых инструментов, таких как опционы.
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥7🕊7💯7 3⚡1
Золотое сечение — это математическое соотношение, которое считается красивой и гармоничной пропорцией 🤗
Оно возникает в природе, применяется в искусстве и даже в архитектуре. Более подробно:
Как его нашли и что это такое?
Как обозначить золотое сечение и чему оно равно?
Применение золотого сечения:
В природе:
• Золотое сечение можно наблюдать в строении растений, раковинах моллюсков, форме галактик и даже в распределении лепестков цветов.
В искусстве:
• Многие художники и архитекторы используют золотое сечение для создания гармоничных композиций.
В архитектуре:
• На «золотых отрезках» основываются различные системы пропорционирования.
#статья 📚
Оно возникает в природе, применяется в искусстве и даже в архитектуре. Более подробно:
Как его нашли и что это такое?
• Золотое сечение было известно еще в Древней Месопотамии, Египте и античной Греции.
• В древнегреческой математике оно именовалось делением отрезка точкой на две части так, что бо́льшая часть относится к меньшей, как весь отрезок к бо́льшей.
• Это понятие распространялось не только на отрезки, но и на произвольные величины.
Как обозначить золотое сечение и чему оно равно?
• Число, равное отношению, обычно обозначается прописной греческой буквой φ в честь древнегреческого скульптора и архитектора Фидия — это, по сути, и есть само золотое сечение.
• Значение числа φ приближенно равно 1.6180339887498948482...
Применение золотого сечения:
В природе:
• Золотое сечение можно наблюдать в строении растений, раковинах моллюсков, форме галактик и даже в распределении лепестков цветов.
В искусстве:
• Многие художники и архитекторы используют золотое сечение для создания гармоничных композиций.
В архитектуре:
• На «золотых отрезках» основываются различные системы пропорционирования.
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥9⚡6 4🤔2 2 1
Разберем видео ниже 🔍
Объяснение:
• Функция определяется как Z(θ) = e^(iθ) + e^(iθφ).
• Если φ - рациональное число, то существует θ = 2πn, такое что nφ является целым числом, и наблюдается периодическая картина, следовательно совпадение случается после n циклов (1 цикл = стержень посередине совершает полный оборот на 360°).
• Постараемся выяснить когда именно данное совпадение произойдет⌨️ .
Математика:
• Функция: Z(θ) = e^(iθ) + e^(iθφ).
• e^(iθ) - это стержень посередине, который создает обычную единичную окружность. Один цикл соответствует θ = 2π. Затем рисование окружности повторяется. Таким образом, θ = 2πn соответствует n циклам.
• e^(iθφ) - это внешний стержень, который вращается быстрее в φ раз, при этом его конечная точка в сочетании с внутренним стержнем создает показанный рисунок.
• Если φ - рациональное число, т.е. может быть представлено дробью двух целых чисел, а именно φ = p/q, то мы ожидаем, что рисунок повторится после q циклов, т.е. θ = 2πq.
Тогда справедливо следующее:
Моменты, когда рисунок почти совпадает, определяются целыми числами n, где nφ - почти целое число. Вот несколько перечисленных:
Однако, учитывая масштабирование, можно предположить совпадение при:
то есть:
И так далее🤫
Референсы на автора видео🔍
#решение 🤓
Объяснение:
• Функция определяется как Z(θ) = e^(iθ) + e^(iθφ).
• Если φ - рациональное число, то существует θ = 2πn, такое что nφ является целым числом, и наблюдается периодическая картина, следовательно совпадение случается после n циклов (1 цикл = стержень посередине совершает полный оборот на 360°).
• Постараемся выяснить когда именно данное совпадение произойдет
Математика:
• Функция: Z(θ) = e^(iθ) + e^(iθφ).
• e^(iθ) - это стержень посередине, который создает обычную единичную окружность. Один цикл соответствует θ = 2π. Затем рисование окружности повторяется. Таким образом, θ = 2πn соответствует n циклам.
• e^(iθφ) - это внешний стержень, который вращается быстрее в φ раз, при этом его конечная точка в сочетании с внутренним стержнем создает показанный рисунок.
• Если φ - рациональное число, т.е. может быть представлено дробью двух целых чисел, а именно φ = p/q, то мы ожидаем, что рисунок повторится после q циклов, т.е. θ = 2πq.
Тогда справедливо следующее:
Z(2πq + ϑ) = e^(i(2πq + ϑ)) + e^(i(2πq + ϑ)φ)
=
e^(i2πq) * e^(iϑ)
+
e^(i2πqφ) * e^(iϑφ)
=
e^(iϑ) + e^(iϑφ) = Z(ϑ)
Моменты, когда рисунок почти совпадает, определяются целыми числами n, где nφ - почти целое число. Вот несколько перечисленных:
5φ = 8,09
8φ = 12,94
13φ = 21,03
21φ = 33,98
26φ = 42,07
Однако, учитывая масштабирование, можно предположить совпадение при:
n = 5,702,887
или
n = 102,334,155.
то есть:
5,702,887φ = 9,227,464.99999992
или
102,334,155φ = 165,580,140.999999995.
И так далее
Референсы на автора видео
#решение 🤓
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯8 6 5 3 1 1
Немножко заметок по матрицам ✍️
Для начала кратко скажем зачем вообще нужны эти ваши матрицы в повседневной жизни. Предлагаю рассмотреть несколько примеров:
Финансы и бюджетирование:
Графический дизайн и компьютерная графика:
Спорт и фитнес:
Транспорт и логистика:
Социальные науки:
Далее опишем как применяются матрицы в научной области. Несколько примеров ниже:
Линейная алгебра:
Графические преобразования:
Физика и инженерия:
Статистика и обработка данных:
Теперь приправим описание небольшим количеством теории по матрицам.
Матрица — математический объект, записываемый в виде прямоугольной таблицы, который представляет собой совокупность строк и столбцов, на пересечении которых находятся его элементы (числа, символы или выражения ☠️ ).
Количество строк и столбцов задает размер матрицы. Размерность матрицы обычно обозначается в виде: (m х n), где m - количество строк, а n - количество столбцов.
Матрицы широко применяются в математике и физике для компактной записи и решения систем линейных алгебраических уравнений и систем дифференциальных уравнений (расскажу подробнее в будущих постах ⌨️ ). При этом количество строк матрицы соответствует количеству уравнений системы, а количество столбцов - количеству неизвестных величин.
Опишем пару основных формул и заметок:
Элементы матрицы:
Главная диагональ матрицы:
Побочная диагональ матрицы:
След матрицы (trace):
Сложение матриц:
Умножение матриц:
#статья 📚
Для начала кратко скажем зачем вообще нужны эти ваши матрицы в повседневной жизни. Предлагаю рассмотреть несколько примеров:
Финансы и бюджетирование:
• Матрицы используются для анализа финансовых данных, оптимизации инвестиций и управления бюджетом.
Графический дизайн и компьютерная графика:
• Матрицы позволяют трансформировать изображения, применять фильтры и эффекты.
Спорт и фитнес:
• Матрицы могут помочь в анализе тренировок, составлении планов и оптимизации питания.
Транспорт и логистика:
• Матрицы используются для оптимизации маршрутов, управления запасами и расписаниями.
Социальные науки:
• В социологии и психологии матрицы могут помочь анализировать социальные связи и взаимодействия.
Далее опишем как применяются матрицы в научной области. Несколько примеров ниже:
Линейная алгебра:
• Матрицы играют ключевую роль в линейной алгебре. Они помогают решать системы линейных уравнений, находить собственные значения и векторы, а также решать задачи оптимизации.
Графические преобразования:
• Матрицы используются для преобразования графических объектов. Например, в компьютерной графике они позволяют вращать, масштабировать и переносить изображения.
Физика и инженерия:
• Матрицы применяются при моделировании физических систем, например, при анализе электрических цепей (да-да, это важно ). 🤔
Статистика и обработка данных:
• Матрицы используются для обработки данных, например, при анализе многомерных данных или в методах машинного обучения.
Теперь приправим описание небольшим количеством теории по матрицам.
Матрица — математический объект, записываемый в виде прямоугольной таблицы, который представляет собой совокупность строк и столбцов, на пересечении которых находятся его элементы (
Количество строк и столбцов задает размер матрицы. Размерность матрицы обычно обозначается в виде: (m х n), где m - количество строк, а n - количество столбцов.
Матрицы широко применяются в математике и физике для компактной записи и решения систем линейных алгебраических уравнений и систем дифференциальных уравнений (
Опишем пару основных формул и заметок:
Элементы матрицы:
• Каждое число в матрице называется элементом матрицы. Элементы матрицы A обозначаются как a_(i,j), где i - номер строки, а j - номер столбца.
Главная диагональ матрицы:
• Это диагональ, проведенная из левого верхнего угла матрицы в правый нижний угол.
Побочная диагональ матрицы:
• Это диагональ, проведенная из левого нижнего угла матрицы в правый верхний угол.
След матрицы (trace):
• Это сумма элементов главной диагонали матрицы. Обозначается tr A, где A - это матрица.
Сложение матриц:
• Сложение матриц A и В необходимо проводить поэлементно, т.е. элемент a_(1,1) матрицы А складывается с элементом b_(1,1) матрицы В и так далее. При сложении количество строк и столбцов в слагаемых матрицах должно совпадать🤝 🤝 .
Умножение матриц:
• Результатом умножения матрицы A с размерностью (m х n) и матрицы В с размерностью (n х k) будет матрица C с размерностью m х k). Элемент матрицы (C), стоящий в i-ой строке и j-ом столбце: c_(i,j), равен сумме произведений элементов i-ой строки матрицы A на соответствующие элементы j-ого столбца матрицы B😎 .
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
Решил написать немного классики про планирование задач и про то, зачем записывать их на бумагу перед выполнением ✅
Сразу перечислим список очевидных преимуществ такого подхода:
В итоге, планирование и запись задач на бумаге — это эффективный способ управления своим временем и продуктивностью.
Но что делать, если задачи слишком большие и непонятные, например: "Написать курсовую до конца мая"?
Ответ: декомпозировать🟦
Декомпозиция задач - это процесс разбиения сложной задачи на более мелкие и понятные части. Это важный инструмент, который помогает последовательно закрывать поставленные задачи и решать сопутствующие проблемы(да-да, они обязательно появятся 😨 ) .
Сразу опишем несколько плюсов декомпозиции:
В общем и целом, декомпозиция задач помогает улучшить эффективность и продуктивность, делая большие и сложные задачи более понятными и выполнимыми💥
#хинт 😮💨
Сразу перечислим список очевидных преимуществ такого подхода:
• Запись целей и задач на бумаге помогает организовать мысли и идеи.
• Это также позволяет увидеть общую картину и определить, какие задачи являются приоритетными.
• Когда вы записываете задачи, вы фокусируетесь на том, что нужно сделать. Это помогает избегать отвлекающих факторов и улучшает вашу продуктивность.
• Вычеркивание выполненных задач из списка на бумаге может мотивировать. Такая мотивация помогает делать больше и чувствовать удовлетворение.
• Запись задач на бумаге помогает не забыть как писать от руки😦 . Также, такой подход избавляет мозг от постоянной мысли, что какая-то задача была забыта или просрочена.
• Планирование задач может помочь снизить уровень стресса. Когда у вас есть четкий план действий, волнение перед неизвестным отходит на задний план.
В итоге, планирование и запись задач на бумаге — это эффективный способ управления своим временем и продуктивностью.
Но что делать, если задачи слишком большие и непонятные, например: "Написать курсовую до конца мая"?
Ответ: декомпозировать
Декомпозиция задач - это процесс разбиения сложной задачи на более мелкие и понятные части. Это важный инструмент, который помогает последовательно закрывать поставленные задачи и решать сопутствующие проблемы
Сразу опишем несколько плюсов декомпозиции:
• Большие задачи обычно являются устрашающими и сложными. Разбивая их на более мелкие части, вы делаете их более понятными.
• Когда вы работаете над одной маленькой частью сложной задачи, вы можете сосредоточиться только на ней и не отвлекаться на другие. При таком подходе итоговое решение будет максимально проработанным и последовательным.
• С самого начала можно увидеть прогресс в работе, так как каждая маленькая задача, которую вы завершаете, приближает вас к завершению большой задачи.
• Если вы работаете в команде, декомпозиция большой задачи позволит вам распределить мелкие подзадачи между членами команды. Это значительно увеличит продуктивность.
В общем и целом, декомпозиция задач помогает улучшить эффективность и продуктивность, делая большие и сложные задачи более понятными и выполнимыми
#хинт 😮💨
Please open Telegram to view this post
VIEW IN TELEGRAM
💯10 5 4 3
Что такое дифференциальное уравнение? Попробуем кратко изложить ⏳
Дифференциальное уравнение — уравнение, которое содержит независимую переменную, функцию от этой независимой переменной и ее производные различных порядков.
Давайте упростим определение: дифференциальное уравнение описывает зависимость между функцией и её изменениями📃 .
В общем виде дифференциальное уравнение выглядит так:
Где:
Для чего они вообще нужны☠️ ? Давайте опишем ниже:
• Моделирование природных явлений:
Дифференциальные уравнения позволяют описывать поведение физических систем, таких как движение тел, распределение тепла, электромагнитные волны, колебания струны и т. д.
• Экономика и финансы:
Дифференциальные уравнения помогают моделировать экономические процессы, например: рост населения, инфляцию и даже инвестиции.
• Биология и медицина:
Дифференциальные уравнения применяются для изучения биологических систем, а именно: при изучении процесса распределения вирусов, при наблюдении за ростом бактерий или при описании динамики развития/угасания популяций.
Добавим немного практики🤪 :
Опишем простой пример дифференциального уравнения.
Представим, что у нас есть бассейн с водой. Вода вытекает из него через отверстие в самом низу. Нам необходимо понять, как меняется уровень воды в бассейне с течением времени.
Пусть h(t) — это высота воды в бассейне в момент времени t. Тогда мы можем записать следующее дифференциальное уравнение:
Где:
Теперь решим это уравнение для того, чтобы понять как быстро уровень воды в бассейне будет уменьшаться🚰 . Для решения будем использовать метод разделения переменных:
1. Разделим переменные:
2. Интегрируем обе стороны:
3. Решаем уравнение относительно h(t):
Готово🌊 . Теперь у нас есть общее решение, которое описывает изменение высоты воды h(t) в бассейне в зависимости от времени t и коэффициента k.
#статья 📚
Дифференциальное уравнение — уравнение, которое содержит независимую переменную, функцию от этой независимой переменной и ее производные различных порядков.
Давайте упростим определение: дифференциальное уравнение описывает зависимость между функцией и её изменениями
В общем виде дифференциальное уравнение выглядит так:
F(x, y, y', y", … , y^{n}) = 0.
Где:
• x — независимая переменная (обычно время или расстояние).
• y — неизвестная функция, зависящая от переменной x.
• y' — первая производная y по x.
• y'' — вторая производная y по x.
• y^{n} — n-ая производная y по x.
Для чего они вообще нужны
• Моделирование природных явлений:
Дифференциальные уравнения позволяют описывать поведение физических систем, таких как движение тел, распределение тепла, электромагнитные волны, колебания струны и т. д.
• Экономика и финансы:
Дифференциальные уравнения помогают моделировать экономические процессы, например: рост населения, инфляцию и даже инвестиции.
• Биология и медицина:
Дифференциальные уравнения применяются для изучения биологических систем, а именно: при изучении процесса распределения вирусов, при наблюдении за ростом бактерий или при описании динамики развития/угасания популяций.
Добавим немного практики
Опишем простой пример дифференциального уравнения.
Представим, что у нас есть бассейн с водой. Вода вытекает из него через отверстие в самом низу. Нам необходимо понять, как меняется уровень воды в бассейне с течением времени.
Пусть h(t) — это высота воды в бассейне в момент времени t. Тогда мы можем записать следующее дифференциальное уравнение:
dh(t) / dt = -k * h(t).
Где:
• dh(t) / dt — это производная высоты воды по времени, т.е. скорость изменения высоты.
• k — коэффициент, который зависит, например, от размеров сливного отверстия и площади дна бассейна.
Теперь решим это уравнение для того, чтобы понять как быстро уровень воды в бассейне будет уменьшаться
1. Разделим переменные:
dh(t) / h(t) = -k * dt.
2. Интегрируем обе стороны:
• ∫ ( dh(t) / h(t) ) = ∫ ( -k * dt ).
• ln|h(t)| = -kt + C.
• Здесь: C — это произвольная постоянная, ln — натуральный логарифм.
3. Решаем уравнение относительно h(t):
h(t) = e^(C - kt).
Готово
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯5 5 5💯3⚡2 2
Нейросети являются вычислительными моделями, которые вдохновлены строением и функциями биологических нейронов в человеческом мозге.
В отличие от классических программ, которые следуют заранее определенным инструкциям, нейросети обучаются на больших объемах данных, постепенно совершенствуя свою способность выполнять задачи
Если мы представим, что нейросеть это большой механизм, то основными "шестеренками", благодаря которым он работает, будут:
• Нейроны:
Основными строительными блоками нейросетей являются искусственные нейроны - математические функции, которые принимают входные данные, обрабатывают их и выдают выходные данные.
• Связи:
Нейроны соединены между собой связями, каждая из которых имеет вес, определяющий силу влияния одного нейрона на другой.
• Обучение:
Нейросети обучаются путем итеративного процесса обработки данных и корректировки весов связей.
• Активационная функция:
Определяет, генерирует ли нейрон выходной сигнал на основе его входных данных.
• Обратная связь:
Обратная связь в контексте нейронных сетей представляет собой процесс, благодаря которому сеть корректирует свои параметры на основе информации о том, насколько ее выходные данные соответствуют ожидаемым результатам.
Благодаря этим "шестеренками" нейросети могут решать широкий круг задач, например:
• Распознавание образов🔍 :
Например, идентификация объектов на изображениях или распознавание речи.
• Прогнозирование🔮 :
Например, прогнозирование цен на акции или предсказание погодных условий.
• Кластеризация🟦 :
Например, группировка данных по схожим признакам.
• Обработка естественного языка🔊 :
Например, перевод текста с одного языка на другой или извлечение информации из документов.
Важно отметить, что нейросети не являются идеальными и имеют некоторые ограничения:
• Требуют больших объемов данных💿 :
Для обучения эффективной нейросети требуется большое количество размеченных данных, что может быть дорогостоящим и трудоемким.
• Могут быть "черными ящиками"👩💻 :
Нейросети могут быть сложными для интерпретации, что затрудняет понимание того, как они принимают решения. Из-за "непрозрачности" возникает недоверие к полученным результатам.
• Могут быть предвзятыми🥷 :
Нейросети могут отражать предубеждения, которые присутствовали в данных, используемых при обучении.
Добавим немного про математику, которая лежит в основе нейросетей
1. Линейная алгебра:
• Матрицы и векторы.
Нейронные сети используют матрицы и векторы для представления и обработки данных. Например, входные данные и веса нейронов часто представлены в виде матриц.
• Умножение матриц.
Это основная операция, используемая для вычисления выходных значений нейронов.
2. Дифференциальное исчисление:
• Градиентный спуск.
Это метод оптимизации, используемый для минимизации функции потерь. Градиентный спуск помогает корректировать веса нейронов, чтобы сеть лучше обучалась на данных.
• Производные.
Используются для вычисления градиентов, которые показывают, как изменяется функция потерь при изменении весов.
3. Теория вероятностей и статистика:
• Функции активации.
Например, сигмоидная функция или функция ReLU (
• Регуляризация.
Методы, такие как L1 и L2 регуляризация, используются для предотвращения переобучения модели.
4. Линейные модели:
• Персептрон.
Это простейшая модель нейрона, которая вычисляет взвешенную сумму входных данных и применяет функцию активации.
5. Обратное распространение ошибки (
• Алгоритм обратного распространения.
Используется для вычисления градиентов и обновления весов в сети. Этот алгоритм позволяет сети обучаться на основе ошибок, допущенных на предыдущих шагах.
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡10 5💯3 3 2
Предлагаю пробежаться по числу π.
Число π является математической постоянной, которая играет важную роль в геометрии, тригонометрии, математике, физике и во многих других областях науки⚔️ ⚔️ .
Вот некоторые интересные факты о том самом числе π:
• Число π представляет собой отношение длины окружности к её диаметру. Напомним формулу, по которой можно вычислить длину окружности:
• Десятичное представление числа π бесконечно, не периодично и не может быть точно выражено в виде дроби m / n, где m и n – целые числа, и n не равно 0. Поэтому:
• Первые несколько знаков числа π💥 :
Добавим немного про историю числа π:
• Некоторые цивилизации, такие как древний Вавилон и древний Египет, приближенно вычисляли π. Например, в древнем Вавилоне его значение было приблизительно равнялось 3.125, а в древнем Египте — 3.1605🔫 🔫 .
• Древнегреческий математик Архимед в 3 веке до нашей эры использовал метод вписанных и описанных многоугольников, чтобы приблизительно определить значение π. Его результат, архимедово число, было равно 22/7 или 3,14286⌨️ .
• С течением времени разрабатывались более точные методы вычисления π, включая анализ рядов, формул и алгоритмов. Сегодня знаки числа π вычисляются с использованием компьютеров с высокой точностью😎 . Например, команда Google рассчитала 100 триллионов знаков после запятой за 158 дней в 2022 году. К слову: для выполнения операций было задействовано 128 процессоров, 864 ГБ оперативной памяти и 554 ТБ объёма компьютеров 😎 .
Теперь немного о применении числа π в разных областях науки:
Так что, в итоге, π – этоважно !
#статья 📚
Число π является математической постоянной, которая играет важную роль в геометрии, тригонометрии, математике, физике и во многих других областях науки
Вот некоторые интересные факты о том самом числе π:
• Число π представляет собой отношение длины окружности к её диаметру. Напомним формулу, по которой можно вычислить длину окружности:
l = π*d, где l – длина окружности, d – диаметр окружности.
• Десятичное представление числа π бесконечно, не периодично и не может быть точно выражено в виде дроби m / n, где m и n – целые числа, и n не равно 0. Поэтому:
π является иррациональным.
• Первые несколько знаков числа π
π =3,1415926535897932384626433832795…
Добавим немного про историю числа π:
• Некоторые цивилизации, такие как древний Вавилон и древний Египет, приближенно вычисляли π. Например, в древнем Вавилоне его значение было приблизительно равнялось 3.125, а в древнем Египте — 3.1605
• Древнегреческий математик Архимед в 3 веке до нашей эры использовал метод вписанных и описанных многоугольников, чтобы приблизительно определить значение π. Его результат, архимедово число, было равно 22/7 или 3,14286
• С течением времени разрабатывались более точные методы вычисления π, включая анализ рядов, формул и алгоритмов. Сегодня знаки числа π вычисляются с использованием компьютеров с высокой точностью
Теперь немного о применении числа π в разных областях науки:
• В математике – используется для расчетов окружностей, площадей кругов, объемов шаров и цилиндров, а также в теории вероятностей и статистике.
• В физике - встречается в формулах, которые описывают: циркулярные и периодические движения.
• В инженерии – применяется при проектировании и расчете конструкций, деталей машин, гидравлических систем и других инженерных задач.
• В компьютерных науках – используется при разработке алгоритмов различной сложности, визуализации данных и моделировании процессов.
Так что, в итоге, π – это
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
Python (читается как «Пайтон») — предлагаю остановиться на этой теме 🐍
Сейчас Python - является широко распространенным языком программирования, который применяется во многих областях, например:
• Разработка прикладного ПО.
• Разработка web-приложений.
• Использование в качестве встраиваемого скриптового языка во многих играх, и не только (3D редактор Blender, СУБД PostgreSQL ).
• Использование в научных вычислениях (Для расчетов: пакеты numPy и SciPy. Для рисования графиков: пакет PyPlot. Таким образом, Python может потягаться с пакетами типа MatLab ).
Для работы с Python понадобится:
1. Сам интерпретатор, его можно взять тут (https://www.python.org/downloads/ ).
2. IDE или среда разработки. Отметим, что для начала она необязательна😎 .
В начале будет достаточно интерактивной оболочки самого Python. После установки интерпретатора просто запускаем python.exe🍿 . Приглашение на ввод будет выглядеть так:
Также есть возможность записывать программы в файлы с расширением .py в вашем любимом текстовом редакторе (например: "Блокнот", "Notepad++" ). Для запуска файлов на выполнение можно кликнуть по ним 2 раза. Если консольное окно закрывается слишком быстро, можно в конце программы дописать следующую строку:
В таком случае, интерпретатор будет ждать в конце программы нажатия enter😎 .
Также, можно воспользоваться одной из многих удобных IDE для Python (Например: "Visual Studio", "Spyder", "PyCharm" ), в которых есть возможность отладки кода, подсветки синтаксиса и многие другие удобства.
Предлагаю добавить немного теории:
Python — язык со строгой динамической неявной типизацией.
Что это означает?
Смотри ответ ниже👇 .
• "Строгая" означает, что язык не производит неявные преобразования типов переменных и не создаёт сюрпризов при их случайном смешении (если такое все-таки произойдет - выскочит ошибка ☹️ ).
• "Динамическая" означает, что типы переменных определяются в процессе выполнения программы.
• "Неявная" означает, что тип переменной определяется интерпретатором или компилятором.
Также:
• Присваивание значения переменной осуществляется с помощью знака "=".
• В Python нет специального ограничителя для блоков кода, их роль выполняют отступы. То есть то, что написано с одинаковым отступом — является одним командным блоком1️⃣ .
Теперь добавим немного практики:
• Условия:
Условие задается с помощью оператора " if ", который заканчивается символом " : ". Альтернативные условия, которые будут выполняться, если первая проверка неуспешна, задаются оператором " elif ". Наконец, " else " задает ветку, которая будет выполнена в случае если ни одно из условий не выполняется😭 .
Пример:
• Циклы:
Простейшим видом цикла является цикл " while ". В качестве параметра он принимает условие и выполняется до тех пор, пока это условие является истиной.
Пример:
Также, в Python существует вид цикла " for ", в котором переменной будут присваиваться (по очереди) все значения из списка.
Пример, в котором в роли списка - строка❤️ :
Пример с циклом, который повторяется n-раз:
На этом предлагаю остановиться. Продолжение в следующем посте🤫 .
#статья 📚
Сейчас Python - является широко распространенным языком программирования, который применяется во многих областях, например:
• Разработка прикладного ПО.
• Разработка web-приложений.
• Использование в качестве встраиваемого скриптового языка во многих играх, и не только (
• Использование в научных вычислениях (
Для работы с Python понадобится:
1. Сам интерпретатор, его можно взять тут (
2. IDE или среда разработки. Отметим, что для начала она необязательна
В начале будет достаточно интерактивной оболочки самого Python. После установки интерпретатора просто запускаем python.exe
>>>
Также есть возможность записывать программы в файлы с расширением .py в вашем любимом текстовом редакторе (
input()
В таком случае, интерпретатор будет ждать в конце программы нажатия enter
Также, можно воспользоваться одной из многих удобных IDE для Python (
Предлагаю добавить немного теории:
Python — язык со строгой динамической неявной типизацией.
Что это означает?
Смотри ответ ниже
• "Строгая" означает, что язык не производит неявные преобразования типов переменных и не создаёт сюрпризов при их случайном смешении (
• "Динамическая" означает, что типы переменных определяются в процессе выполнения программы.
• "Неявная" означает, что тип переменной определяется интерпретатором или компилятором.
Также:
• Присваивание значения переменной осуществляется с помощью знака "=".
• В Python нет специального ограничителя для блоков кода, их роль выполняют отступы. То есть то, что написано с одинаковым отступом — является одним командным блоком
Теперь добавим немного практики:
• Условия:
Условие задается с помощью оператора " if ", который заканчивается символом " : ". Альтернативные условия, которые будут выполняться, если первая проверка неуспешна, задаются оператором " elif ". Наконец, " else " задает ветку, которая будет выполнена в случае если ни одно из условий не выполняется
Пример:
>>> x = 13
>>> if (x<10) or (x>20):
... print("x не подходит")
... elif (10<x<20):
... print("x подходит!")
... else:
... print("x выколотая точка")
...
x подходит!
• Циклы:
Простейшим видом цикла является цикл " while ". В качестве параметра он принимает условие и выполняется до тех пор, пока это условие является истиной.
Пример:
>>> x = 0
>>> while(x<=3):
... print(x)
... x += 1
...
0
1
2
3
Также, в Python существует вид цикла " for ", в котором переменной будут присваиваться (по очереди) все значения из списка.
Пример, в котором в роли списка - строка
>>> x = "Привет"
>>> for char in x:
... print(char)
...
П
р
и
в
е
т
Пример с циклом, который повторяется n-раз:
>>> for x in range(4):
... print(x)
...
0
1
2
3
На этом предлагаю остановиться. Продолжение в следующем посте
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
Python.org
Download Python
The official home of the Python Programming Language
И снова наш любимый Python 😭 — предлагаю начать с основ и коснуться переменных и операций над числами.
Начнем с того, что любая программа состоит из набора команд и данных. В итоге, для того, чтобы можно было хранить эти самые данные, в Python есть такое понятие как переменные✨ .
Если говорить простым языком, то переменная — это имя, с помощью которого можно обратиться к данным, сохраненным в памяти компьютера.
Если говорить более душно☹️ , то переменная — это именованная область в оперативной памяти компьютера, к которой мы можем обращаться неоднократно, с целью извлечь данные.
Синтаксис объявления переменной можно упаковать в следующую "формулу":
Вот пару примеров того, как объявляется (создается😎 ) переменная:
Естественно, что у разных переменных могут быть разные типы данных. В примере выше:
• переменная "first" является строкой;
• переменная "second" является числом.
Самое простое, что можно сделать с переменной, это вывести на экран ее значение. Для этого добавим одну строчку к нашему коду1️⃣ .
Если запустить такую программу в каком-нибудь онлайн компиляторе или, например, в Jupyter Notebook (как это сделал я😮💨 ) — нам будет выведено:
Теперь опишем несколько правил, которых следует придерживаться при выборе имен переменных👇 :
1. Имя переменной может содержать только латинские буквы, числа и символ нижнего подчеркивания.
2. Имя переменной не должно содержать пробелов.
3. Имя переменной не должно начинаться с цифры.
4. Регистр важен (first и First это разные переменные ).
5. Учитывайте, что некоторые наименования могут быть зарезервированы (это ключевые слова, например: "False, True, for, while и т.д." и наименования встроенных функций, например: "abs(), bool(), и т.д." ).
Теперь напишем про операции над числами. Кайф заключается в том, что в Python встроены все нужные операторы для арифметических действий, а их использование очень похоже на математические записи, которые, используются в повседневной жизни❤️ .
Рассмотрим пример:
После запуска такой программы нам будет выведен текст:
Предлагаю разобраться поподробнее🫡 :
1. В первой строке переменной "a" будет присвоено значение суммы чисел 10 и 5.
2. Во второй строке мы складываем значение переменной "a" и число 20. В итоге в переменную "b" будет записано число 35.
3. Приоритеты операторов в Python точно такие же, как в обычной математике, а порядок выполнения можно изменить с использованием скобок. Это происходит в третьей строке программы.
В завершении опишем арифметические операторы, которые можно использовать в Python (10 + 5 = 15, где "10" и "5" это операнды, а "+" это оператор ) ✍️ :
#статья 📚
Начнем с того, что любая программа состоит из набора команд и данных. В итоге, для того, чтобы можно было хранить эти самые данные, в Python есть такое понятие как переменные
Если говорить простым языком, то переменная — это имя, с помощью которого можно обратиться к данным, сохраненным в памяти компьютера.
Если говорить более душно
Синтаксис объявления переменной можно упаковать в следующую "формулу":
"Наименование переменной" + "=" + "Значение переменной"
Вот пару примеров того, как объявляется (создается
first = "синий"
second = 23
Естественно, что у разных переменных могут быть разные типы данных. В примере выше:
• переменная "first" является строкой;
• переменная "second" является числом.
Самое простое, что можно сделать с переменной, это вывести на экран ее значение. Для этого добавим одну строчку к нашему коду
first = "синий"
second = 23
print(first, second)
Если запустить такую программу в каком-нибудь онлайн компиляторе или, например, в Jupyter Notebook (как это сделал я
синий 23
Теперь опишем несколько правил, которых следует придерживаться при выборе имен переменных
1. Имя переменной может содержать только латинские буквы, числа и символ нижнего подчеркивания.
2. Имя переменной не должно содержать пробелов.
3. Имя переменной не должно начинаться с цифры.
4. Регистр важен (
5. Учитывайте, что некоторые наименования могут быть зарезервированы (
Теперь напишем про операции над числами. Кайф заключается в том, что в Python встроены все нужные операторы для арифметических действий, а их использование очень похоже на математические записи, которые, используются в повседневной жизни
Рассмотрим пример:
a = 10 + 5
b = a + 20
c = (a + b) * 2
print(a, b, c)
После запуска такой программы нам будет выведен текст:
15 35 100
Предлагаю разобраться поподробнее
1. В первой строке переменной "a" будет присвоено значение суммы чисел 10 и 5.
2. Во второй строке мы складываем значение переменной "a" и число 20. В итоге в переменную "b" будет записано число 35.
3. Приоритеты операторов в Python точно такие же, как в обычной математике, а порядок выполнения можно изменить с использованием скобок. Это происходит в третьей строке программы.
В завершении опишем арифметические операторы, которые можно использовать в Python (
• " + " (Добавление) - добавляет левый операнд к правому. Пример: "a + b = 15", где a = 10, b = 5;
• " - " (Вычитание) - вычитает правый операнд из левого. Пример: "a - b = 5";
• " * " (Умножение) - умножает левый операнд на правый. Пример: "a * b = 50";
• " / " (Деление) - делит левый операнд на правый. Пример: "a / b = 2";
• " % " (Деление по модулю) - делит левый операнд на правый и возвращает остаток. Пример: "a % b = 0";
• " ** " (Возведение в степень) - возводит левый операнд в степень, которая равна правому операнду. Пример: "a ** b = 100000";
• " // " (Целочисленное деление) - деление в котором возвращается только целая часть результата, а часть после запятой отбрасывается. Пример: "9 // 2 = 4".
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
Продолжим серию постов про Python 🍎 . Предлагаю разобрать строки 🌈 .
Строка — это тип данных, который нужен для работы с текстом. Для того, чтобы создать строку в Python, нужно "обернуть" значение переменной в одинарные(') или двойные кавычки (") . Если нужно использовать большое количество текста, который занимает несколько строк, в рамках одной переменной, можно "оборачивать" этот текст в тройные кавычки (''' или """) 😄 . Приведем пример:
Если запустить код, который описан выше, будет выведено следующее😎 :
Помимо создания строк в исходном коде (описано выше👆 ), можно получать строку от пользователя с помощью функции "input()". Предлагаю сразу разобрать пример:
При запуске такой программы пользователь получит приглашение ввести свое имя, а затем фамилию. Как только это будет сделано, в переменную name будет записано имя, которое он ввел, а в переменную surname будет записана фамилия, которую он ввел1️⃣ .
В третьей строке программы есть оператор " + ", про который можно почитать в предыдущем посте. В данном случае, с его помощью несколько строк склеиваются в одну(этот процесс также можно называть "конкатенацией строк") .
Четвертая строка выведет целое приветствие на экран👋 . То есть, если пользователь введет имя "Андрей", а затем фамилию "Разыграев" (все совпадения случайны ☹️ ) , то будет выведено следующее:
Также стоит отметить, что строки могут быть пустыми, то есть не иметь внутри себя ни одного символа.
Пробел – это такой же символ, как и все остальные, поэтому две строки ниже не равны между собой:
Ну и напоследок, предлагаю разобрать простую, но очень полезную встроенную функцию, с помощью которой можно узнать длину строки❤️ . Это функция:
Сразу приведем пример использования этой функции:
Допустим, что после запуска программы, пользователь ввел следующий текст "Интересно, какое количество символов в этой строке?"👍 . Тогда, после выполнения программы будет выведено:
#статья 📚
Строка — это тип данных, который нужен для работы с текстом. Для того, чтобы создать строку в Python, нужно "обернуть" значение переменной в одинарные
a = 'Привет, друг!'
b = "Как дела?"
c = """очень-очень-очень
длинный текст, который
занимает несколько строк"""
print(a)
print(b)
print(c)
Если запустить код, который описан выше, будет выведено следующее
Привет, друг!
Как дела?
очень-очень-очень
длинный текст, который
занимает несколько строк
Помимо создания строк в исходном коде (описано выше
name = input('Введите свое имя: ')
surname = input('Введите свою фамилию: ')
privetstvie = "Привет, " + name + " " + surname
print(privetstvie)При запуске такой программы пользователь получит приглашение ввести свое имя, а затем фамилию. Как только это будет сделано, в переменную name будет записано имя, которое он ввел, а в переменную surname будет записана фамилия, которую он ввел
В третьей строке программы есть оператор " + ", про который можно почитать в предыдущем посте. В данном случае, с его помощью несколько строк склеиваются в одну
Четвертая строка выведет целое приветствие на экран
Привет, Андрей Разыграев
Также стоит отметить, что строки могут быть пустыми, то есть не иметь внутри себя ни одного символа.
Пробел – это такой же символ, как и все остальные, поэтому две строки ниже не равны между собой:
• a = "" (Это пустая строка☔️ )
• b = " " (Это строка, которая состоит из одного пробела💪 )
Ну и напоследок, предлагаю разобрать простую, но очень полезную встроенную функцию, с помощью которой можно узнать длину строки
• len() – возвращает количество символов строки
Сразу приведем пример использования этой функции:
stroka = input('Введите любой текст: ')
a = len(stroka)
print(a)Допустим, что после запуска программы, пользователь ввел следующий текст "Интересно, какое количество символов в этой строке?"
51
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
Предлагаю разобрать некоторые полезные методы, которые направлены на наши "любимые" строки. Поехали 🍿 .
Методы, с помощью которых можно манипулировать (да, именно так 😄 ) строками, похожи на функции. Их тоже можно вызывать и, так же как и функции, они могут возвращать результат своей работы. Отличаются эти методы тем, что они привязаны к определенному типу данных. Это означает, что, например, методы строк могут быть вызваны только у строк 🙄 .
Чтобы не ходить вокруг да около, сразу приведем несколько примеров того, как вызывать эти самые методы строк и безжалостно их использовать☹️ . Напишем, а затем запустим код ниже:
Вывод после запуска кода будет таким:
То есть метод " .lower() " возвращает строку, в которой все символы находятся в нижнем регистре.
А метод " .upper() ", соответственно, возвращает строку, в которой все символы находятся в верхнем регистре. В параметрах методов (то, что в скобках, после названия метода 😏 ) ничего указывать не нужно.
Также, очень ! важно ! помнить, что методы не меняют исходную строку. Строки в Python вообще нельзя изменить🍔 . И что тогда делать? Ответ таков: нужно присвоить строке новое значение 1️⃣ , пример ниже.
Вывод программы выше будет таким:
Но если мы потом, после компиляции кода выше, будем использовать значение переменной " stroka ", то оно будет равно именно "НИЧЕГО СЛОЖНОГО :)", а не "Ничего сложного :)". Вот такой вот нюанс🍎 !
Теперь рассмотрим самое интересное, но немного душное: индексы строк.
Бывает так, что иногда нужно выбирать отдельные символы из строки. В Python для этого необходимо использовать квадратные скобки: "[...]"🗿 . Ниже приведены примеры получения символа строки s, которая равна слову "Дружище".
Код:
Вывод:
Видно, что " s[0] " — возвращает первый символ нашей строки, " s[1] " — возвращает второй символ, " s[-1] " — возвращает последний символ, " s[-2] " — возвращает предпоследний символ. Отсюда можем выделить пару несложных правил✨ :
После вышеописанного можем рассмотреть просто душное (шучу ☹️ ): cрезы строк.
Срез используется для выделения части строки. Он состоит из индекса и диапазона. Сразу рассмотрим несколько примеров со строкой c = "абвгдежзик".
Индексы символов строки "c":
Символы строки "c", соответственно:
Тогда, при запуске кода ниже:
Вывод будет следующим:
Теперь разберем:
Ну и теперь уже по-классике сформулируем из того, что выше несколько правил❤️ :
#статья 📚
Методы, с помощью которых можно манипулировать (
Чтобы не ходить вокруг да около, сразу приведем несколько примеров того, как вызывать эти самые методы строк и безжалостно их использовать
stroka = "Ничего сложного :)"
print(stroka.lower())
print(stroka.upper())
Вывод после запуска кода будет таким:
ничего сложного :)
НИЧЕГО СЛОЖНОГО :)
То есть метод " .lower() " возвращает строку, в которой все символы находятся в нижнем регистре.
А метод " .upper() ", соответственно, возвращает строку, в которой все символы находятся в верхнем регистре. В параметрах методов (
Также, очень ! важно ! помнить, что методы не меняют исходную строку. Строки в Python вообще нельзя изменить
stroka = "Ничего сложного :)"
stroka = stroka.upper()
print(stroka)
Вывод программы выше будет таким:
НИЧЕГО СЛОЖНОГО :)
Но если мы потом, после компиляции кода выше, будем использовать значение переменной " stroka ", то оно будет равно именно "НИЧЕГО СЛОЖНОГО :)", а не "Ничего сложного :)". Вот такой вот нюанс
Теперь рассмотрим самое интересное, но немного душное: индексы строк.
Бывает так, что иногда нужно выбирать отдельные символы из строки. В Python для этого необходимо использовать квадратные скобки: "[...]"
Код:
s = "Дружище"
print(s[0])
print(s[1])
print(s[-1])
print(s[-2])
Вывод:
Д
р
е
щ
Видно, что " s[0] " — возвращает первый символ нашей строки, " s[1] " — возвращает второй символ, " s[-1] " — возвращает последний символ, " s[-2] " — возвращает предпоследний символ. Отсюда можем выделить пару несложных правил
1. Нумерация индексов символов начинается с нуля;
2. Отрицательный индекс отсчитывает символы, начиная с конца строки.
После вышеописанного можем рассмотреть просто душное (
Срез используется для выделения части строки. Он состоит из индекса и диапазона. Сразу рассмотрим несколько примеров со строкой c = "абвгдежзик".
Индексы символов строки "c":
0 1 2 3 4 5 6 7 8 9
Символы строки "c", соответственно:
а б в г д е ж з и к
Тогда, при запуске кода ниже:
c = "абвгдежзик"
print(c[2 : 5])
print(c[ : 5])
print(c[5 : ])
print(c[-2 : ])
print(c[: ])
print(c[1 : 7 : 2])
print(c[: : -1 ])
Вывод будет следующим:
вгд
абвгд
ежзик
ик
абвгдежзик
бге
кизжедгвба
Теперь разберем:
• В 1 строке — вывелись символы с индексами 2,3,4
• В 2 строке — вывелись первые пять символов
• В 3 строке — вывелись символы, начиная с 5 и до конца
• В 4 строке — вывелись два последних символа
• В 5 строке — вывелась вся строка
• В 6 строке — вывелись символы со второго по шестой, через один
• В 7 строке — вывелась стока наоборот (т.к. шагаем по одному символу с конца строки💪 )
Ну и теперь уже по-классике сформулируем из того, что выше несколько правил
1. Структуру среза можно представить "формулой": наша_строка[начальный_символ : конечный_символ + 1 : шаг];
2. Срезы не включают явное расположение окончания строки. Например, в приведенном выше примере " c[2 : 5] ", выводятся символы с индексами 2, 3 и 4, но не символ с индексом 5;
3. Мы можем оставить, вместо индекса начала или окончания строки, пустоту (или пробел);
4. Используя отрицательные индексы, мы можем получать символы с конца строки.
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
Давайте сделаем небольшое отступление от Python и порассуждаем на тему спорта, дисциплины и зачем это вообще нужно 🤷♀️ ?
Начнем с очевидного, а именно - со спорта🏋️♂️ .
Спорт — это не просто физическая активность, это неотъемлемая часть здорового образа жизни (признайтесь, удивил? 😄 ). Регулярные тренировки приносят много полезного для организма и психического состояния, рассмотрим примеры ниже:
Ни для кого не секрет, что спорт дисциплинирует. Но как это происходит? (Сейчас капитан очевидность разберется 😎 )
При регулярных занятиях возникает необходимость в:
1. Составлении тренировочного плана. Чтобы достичь своих целей, необходимо составить план тренировок и строго его придерживаться. Это учит планированию и целеустремленности✨ .
2. Регулярности. Регулярные тренировки формируют привычку и помогают развивать силу воли💪 .
3. Преодолении трудностей. Во время тренировок всегда возникают трудности: усталость, боль, желание бросить все😭 . Преодолевая их, вы становитесь более стойким и уверенным в себе и своих силах.
Теперь, когда связь между спортом и дисциплиной явно определена, опишем почему дисциплина >> мотивации. (>> - означает «много больше» 🍎 )
Дисциплина часто оказывается более надежным спутником на пути к достижению целей, чем мотивация, так как:
Мотивация — это переменчивая спутница🙌 .
Дисциплина — это надежный фундамент состоящий из таких «кирпичиков» как:
В итоге, можно сделать вывод:
Дисциплина — это ключ к успеху. Она позволяет достигать поставленных целей, несмотря на препятствия и соблазны. Конечно, мотивация тоже играет важную роль, но дисциплина — это то, что помогает нам двигаться вперед даже тогда, когда мотивации нет1️⃣ .
Ну а развить эту самую дисциплину нам поможет спорт и регулярные тренировки. На мой взгляд, это самый простой способ☕️ .
#хинт 😮💨
Начнем с очевидного, а именно - со спорта
Спорт — это не просто физическая активность, это неотъемлемая часть здорового образа жизни (
• Укрепляется сердечно-сосудистая система.
• Повышается общий иммунитет организма.
• Уходит лишний вес.
• Укрепляются кости и суставы.
• Повышается выносливость.
• Снижается уровень стресса и тревожности.
• Повышается настроения из-за выработки гормонов счастья (эндорфинов).
Ни для кого не секрет, что спорт дисциплинирует. Но как это происходит? (
При регулярных занятиях возникает необходимость в:
1. Составлении тренировочного плана. Чтобы достичь своих целей, необходимо составить план тренировок и строго его придерживаться. Это учит планированию и целеустремленности
2. Регулярности. Регулярные тренировки формируют привычку и помогают развивать силу воли
3. Преодолении трудностей. Во время тренировок всегда возникают трудности: усталость, боль, желание бросить все
Теперь, когда связь между спортом и дисциплиной явно определена, опишем почему дисциплина >> мотивации. (
Дисциплина часто оказывается более надежным спутником на пути к достижению целей, чем мотивация, так как:
Мотивация — это переменчивая спутница
1. Нестабильность. Мотивация — это как ветер: то дует сильно, то стихает🥶 .
2. Краткосрочность. Мотивация часто основана на эмоциях и краткосрочных целях. Она может помочь начать что-то делать, но не всегда поддержит на протяжении длительного времени😭 .
3. Зависимость от внешних факторов. Мотивация часто зависит от внешних стимулов (похвала, награды). Если их нет, мотивация может ослабеть и сойти на нет💔 .
Дисциплина — это надежный фундамент состоящий из таких «кирпичиков» как:
1. Постоянство.
Дисциплина — это привычка делать что-то регулярно, вне зависимости от вашего настроения или внешних факторов (плохая погода, темное время суток)🤫 .
2. Долгосрочность.
Дисциплина направлена на достижение долгосрочных целей. Она помогает следовать намеченному плану❤️ .
3. Независимость.
Дисциплина не зависит от внешних факторов. Она позволяет действовать даже тогда,когда мотивации нет☹️ .
В итоге, можно сделать вывод:
Дисциплина — это ключ к успеху. Она позволяет достигать поставленных целей, несмотря на препятствия и соблазны. Конечно, мотивация тоже играет важную роль, но дисциплина — это то, что помогает нам двигаться вперед даже тогда, когда мотивации нет
Ну а развить эту самую дисциплину нам поможет спорт и регулярные тренировки. На мой взгляд, это самый простой способ
#хинт 😮💨
Please open Telegram to view this post
VIEW IN TELEGRAM
Давайте ненадолго вернемся к Python (базовые посты скоро закончатся, правда 😭 ) и разберем, что такое "Модули".
Если говорить простым языком, то это файлы, в которых содержатся определения функций, определяются значения некоторых переменных (например: число π, число Эйлера и т.д. ).
Модули (или библиотеки ) нужны для того, чтобы расширить возможности языка программирования и упростить написание программ. Думаю, что именно за это и любят Python ❤️ .
Давайте разберем несколько интересных и полезных, на мой взгляд, модулей:
И это только самая малая часть из того, что написано и встроено в Python. Обычно, увидев огромное количество этих самых модулей, глаза могут начать разбегаться и может возникнуть неприятное ощущение из-за того, что придется это все как-то учить👊 .
Однако, в этом нет надобности. К использованию модулей стоит прибегать по необходимости. Давайте сразу приведем простой словесный пример:
Стоит также отметить, что сторонние модули могут быть написаны не только на языке Python, но и также на C и C++, а это дает существенный прирост в скорости работы таких модулей (уверен, что среди вас есть любители С и С++ 1️⃣ ).
Теперь добавим немного практики.
Для того, чтобы импортировать нужный модуль в нашу программу, а затем использовать его, необходимо воспользоваться командой "import".
Также, если нам нужно поменять стандартное имя модуля на кастомное, в рамках нашей программы - будем использовать "as". Формализуем вышесказанное😄 :
Ниже приведем пример программы, в которой импортируем модуль "math", выведем число π и посчитаем синус нуля:
Вывод программы выше будет следующим:
Давайте быстренько разберем написанный код:
Вторым примером напишем программу, которая будет выводить 5 случайных целых чисел от 1 до 100 с паузой в одну секунду. Для того, чтобы это сделать импортируем модули "time" и "random":
Вывод программы будет каждый раз разным, например:
По классике бегло разберем написанный код нашего рандомайзера😄 :
Вот такая ночная закидушка вам✅ .
#статья 📚
Если говорить простым языком, то это файлы, в которых содержатся определения функций, определяются значения некоторых переменных (
Модули (
Давайте разберем несколько интересных и полезных, на мой взгляд, модулей:
• Модуль "math" - очень помогает при работе с числами и с простыми математическими функциями (например: sin(x), cos(x) и т.д.).
• Модуль "time" - пригодится для работы со временем😎 .
• Модуль "random" - предоставляет функции для генерации случайных чисел, букв, случайного выбора элементов последовательности☕️ .
И это только самая малая часть из того, что написано и встроено в Python. Обычно, увидев огромное количество этих самых модулей, глаза могут начать разбегаться и может возникнуть неприятное ощущение из-за того, что придется это все как-то учить
Однако, в этом нет надобности. К использованию модулей стоит прибегать по необходимости. Давайте сразу приведем простой словесный пример:
• Допустим, что вы работаете с какими-то сложными математическими вычислениями.
• Вы подключаете модуль со встроенной поддержкой требуемых операций (предварительно посмотрев информацию в гугле🫡 ).
• После этого у вас отпадет необходимость придумывать то, что было уже придумано до вас. Можно сразу использовать☹️ .
Стоит также отметить, что сторонние модули могут быть написаны не только на языке Python, но и также на C и C++, а это дает существенный прирост в скорости работы таких модулей (
Теперь добавим немного практики.
Для того, чтобы импортировать нужный модуль в нашу программу, а затем использовать его, необходимо воспользоваться командой "import".
Также, если нам нужно поменять стандартное имя модуля на кастомное, в рамках нашей программы - будем использовать "as". Формализуем вышесказанное
import наименование_модуля as кастомное_наименование_модуля
Ниже приведем пример программы, в которой импортируем модуль "math", выведем число π и посчитаем синус нуля:
import math as math_bot
print(math_bot.pi)
print(math_bot.sin(0))
Вывод программы выше будет следующим:
3.141592653589793
0.0
Давайте быстренько разберем написанный код:
• В первой строке импортируем модуль "math", называя его "math_bot" в рамках нашей программы✨ .
• Во второй строке выводим значение, которое возвращает метод "pi" модуля "math"👍 .
• В третьей строке выводим значение, которое возвращает метод "sin()" модуля "math" (в метод sin() - передаем значение равное нулю )💪 .
Вторым примером напишем программу, которая будет выводить 5 случайных целых чисел от 1 до 100 с паузой в одну секунду. Для того, чтобы это сделать импортируем модули "time" и "random":
import time
import random
i = 0
while (i <= 4):
print(random.randint(1, 100))
i = i + 1
time.sleep(1)
Вывод программы будет каждый раз разным, например:
37
21
97
89
92
По классике бегло разберем написанный код нашего рандомайзера
• Импортируем модули "time" и "random".
• Задаем начальное значение счетчика, который остановит программу.
• Задаем условие остановки цикла while (5 чисел вывели - останавливаемся)👌 .
• В теле цикла выполняем следующие действия: печатаем рандомное число от 0 до 100, увеличиваем наш счетчик на единицу, ждем одну секунду.
Вот такая ночная закидушка вам
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
Давайте сегодня поговорим про число e (число Эйлера ) 💡 .
Часто говорят, что это число носит статус "магической" константы в математике, но мне в голову приходит следующее:«е, бой» или «е, рок» 😄 .
Ну а если серьезно, то число e является фундаментальной математической константой (одной из 🫡 ). Оно примерно равно:
На первый взгляд кажется, что это просто набор каких-то цифр, но на самом деле это число обладает кучей интересных свойств и играет очень важную роль в различных областях математики, физики и экономики✨ .
Кратко опишем свойства числа e:
И расскажем про применение числа e:
Давайте быстренько распишем: откуда все-таки взялось это число e🤨 ?
Сходу разберем пример с этим сложным процентом:
Представим, что мы начисляем проценты не раз в год, а n раз в год🤑 . В этом случае, формула для расчета конечной суммы будет выглядеть следующим образом:
При бесконечно частой капитализации (n стремится к бесконечности ), выражение:
стремится к числу e^(r*t), при условии, что r - процентная ставка в десятичном виде, а t - количество лет. В итоге, получаем формулу:
Давайте подставим в нее реальные цифры: предположим, вы положили 1000 рублей под 16% годовых (капитализация происходит раз в год ) с непрерывным начислением процентов. Через 5 лет ваша сумма составит 🌈 :
Если положить 1000 рублей под обычный процент с аналогичными условиями, получим👊 :
В итоге, можем сделать вывод, что при непрерывном начислении проценты растут значительно быстрее, чем при обычном начислении📞 .
Вообще, про число е можно написать целую книгу, но делать этого конечно же не будем☹️ .
#статья 📚
Часто говорят, что это число носит статус "магической" константы в математике, но мне в голову приходит следующее:
Ну а если серьезно, то число e является фундаментальной математической константой (
2,71828182845904…
На первый взгляд кажется, что это просто набор каких-то цифр, но на самом деле это число обладает кучей интересных свойств и играет очень важную роль в различных областях математики, физики и экономики
Кратко опишем свойства числа e:
• Число e нельзя представить в виде обыкновенной дроби. Его десятичное представление бесконечно и непериодично.
• Число e не является корнем никакого алгебраического уравнения с целыми коэффициентами.
• Производная функции y = e^x равна e^x. Это свойство делает ее одной из самых важных функций в математическом анализе.
И расскажем про применение числа e:
• Экспоненциальный рост и распад: описывает процессы с постоянной скоростью, такие как рост популяций или радиоактивный распад.
• Финансовые расчеты: используется для вычисления сложных процентов (более подробно про них - ниже ). ✨
• Теория вероятностей: применяется в распределении Пуассона и нормальном распределении.
• Компьютерные науки: Используется в функциях активации (привет нейросетям ). ☕️
Давайте быстренько распишем: откуда все-таки взялось это число e
Число e впервые появилось в связи с изучением сложного процента (это начисление процентов на начисленный ранее процент ). 🤯
При непрерывном начислении процентов, сумма вклада растет экспоненциально, и именно число e описывает скорость этого роста.
Сходу разберем пример с этим сложным процентом:
Представим, что мы начисляем проценты не раз в год, а n раз в год
S = P * (1 + r/n)^(n*t)
где:• S - конечная сумма.
• P - начальная сумма вклада.
• r - процентная ставка (в десятичном виде, т.е. 16% = 0.16 ). ☕️
• n - количество капитализаций в год (капитализация - начисление процентов на вклад ). 🧐
• t - время в годах.
При бесконечно частой капитализации (
(1 + r/n)^(n*t)
стремится к числу e^(r*t), при условии, что r - процентная ставка в десятичном виде, а t - количество лет. В итоге, получаем формулу:
S = P * e^(r*t)
Давайте подставим в нее реальные цифры: предположим, вы положили 1000 рублей под 16% годовых (
S = 1000 * e^(0.16 * 5) ≈ 2225.54 рублей
Если положить 1000 рублей под обычный процент с аналогичными условиями, получим
S = P + P * r * t = 1000 + 1000 * 0,16 * 5 = 1800 рублей
В итоге, можем сделать вывод, что при непрерывном начислении проценты растут значительно быстрее, чем при обычном начислении
Вообще, про число е можно написать целую книгу, но делать этого конечно же не будем
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
Тут собраны лайф-посты про режим, восстановление, перегрузы, поездки, канал и личные выводы.
#навигация 📝
Please open Telegram to view this post
VIEW IN TELEGRAM
Сегодня поговорим про списки в Python и про то, что с ними делать 📝
Давайте предположим, что вы составляете список гостей на ваш день рождения. Этот список постоянно меняется, например:
Для работы с такими данными из реального мира отлично подходят списки (кстати, это еще один встроенный тип данных в Python ☕️ ). Для того, чтобы создать или, как говорится, объявить список в Python можно использовать два способа:
Вывод программы будет следующим:
Стоит отметить, что функция "list()" из второго способа принимает один объект, который можно "разобрать" на элементы, и возвращает список из этих элементов👨💻 . Например, если передать в "list()" строку — получим список букв, из которых эта строка состоит. Передадим в "list()" множество — получим список элементов этого множества ✨ .
Теперь предлагаю вернутся к списку гостей на день рождения. Давайте его создадим (перечислим всех возможных гостей через запятую ):
В списке выше четыре элемента: 'Валера', 'Саша', 'Артем', 'Антон' — которые хранятся внутри списка именно в таком порядке. Если вы не собираетесь менять порядок списка, 'Валера' (настало твое время 😄 ) всегда будет первым элементом, 'Саша' — вторым и т.д.
Мы помним, что Артем и Антон не смогут прийти, поэтому их нужно удалить из нашего списка😫 . Сделаем это с помощью метода ".remove()", который удаляет первое вхождение в список заданного элемента (это означает, что если бы в списке было два элемента 'Артем', то удален бы был только первый ☕️ ):
После выполнения кода выше будет выведено:
Теперь нам нужно добавить в список двух гостей, а именно: Андрея и Ваню✍️ . Добавим новые элементы в конец списка с помощью метода ".append()":
Вывод будет таким:
Также, есть возможность не только удалять / добавлять элемент, но и изменить его значение на другое, опираясь на индекс элемента (индексация начинается с нуля 🫡 ). Сходу рассмотрим на примере:
Компилируем и получаем:
В итоге, можем заключить, что список — это "контейнер", который хранит объекты в определенном порядке. Также, важно отметить, что, в отличие от строк, методы списка меняют исходный список🙄 .
Однако у списков есть кое‑что общее со строками. И это доступ к элементу по индексу и срезы. Все это работает в списках точно так же, как и в строках❤️ . Сходу закинем пример:
И вывод:
На этом все🍎
#статья 📚
Давайте предположим, что вы составляете список гостей на ваш день рождения. Этот список постоянно меняется, например:
• Артем и Антон, в итоге, не смогут прийти😭 .
• Андрей планирует прийти с другом Ваней1️⃣ .
Для работы с такими данными из реального мира отлично подходят списки (
# первый способ
spisok_1 = ['первый', 'второй','третий']
# второй способ
spisok_2 = list('первый')
print(spisok_1, '- первый способ')
print(spisok_2, '- второй способ')
Вывод программы будет следующим:
['первый', 'второй', 'третий'] - первый способ
['п', 'е', 'р', 'в', 'ы', 'й'] - второй способ
Стоит отметить, что функция "list()" из второго способа принимает один объект, который можно "разобрать" на элементы, и возвращает список из этих элементов
Теперь предлагаю вернутся к списку гостей на день рождения. Давайте его создадим (
guests = ['Валера', 'Саша', 'Артем', 'Антон']
В списке выше четыре элемента: 'Валера', 'Саша', 'Артем', 'Антон' — которые хранятся внутри списка именно в таком порядке. Если вы не собираетесь менять порядок списка, 'Валера' (
Мы помним, что Артем и Антон не смогут прийти, поэтому их нужно удалить из нашего списка
guests = ['Валера', 'Саша', 'Артем', 'Антон']
print(guests, '- до удаления')
guests.remove('Артем')
print(guests, '- убрали Артема')
guests.remove('Антон')
print(guests, '- убрали Антона')
После выполнения кода выше будет выведено:
['Валера', 'Саша', 'Артем', 'Антон'] - до удаления
['Валера', 'Саша', 'Антон'] - убрали Артема
['Валера', 'Саша'] - убрали Антона
Теперь нам нужно добавить в список двух гостей, а именно: Андрея и Ваню
guests = ['Валера', 'Саша']
print(guests, '- до добавления')
guests.append('Андрей')
print(guests, '- добавили Андрея')
guests.append('Ваня')
print(guests, '- добавили Ваню')
Вывод будет таким:
['Валера', 'Саша'] - до добавления
['Валера', 'Саша', 'Андрей'] - добавили Андрея
['Валера', 'Саша', 'Андрей', 'Ваня'] - добавили Ваню
Также, есть возможность не только удалять / добавлять элемент, но и изменить его значение на другое, опираясь на индекс элемента (
guests = ['Валера', 'Саша', 'Андрей', 'Ваня']
print(guests, '- до изменения')
guests[2] = 'АНДРЮХА'
print(guests, '- после изменений')
Компилируем и получаем:
['Валера', 'Саша', 'Андрей', 'Ваня'] - до изменения
['Валера', 'Саша', 'АНДРЮХА', 'Ваня'] - после изменений
В итоге, можем заключить, что список — это "контейнер", который хранит объекты в определенном порядке. Также, важно отметить, что, в отличие от строк, методы списка меняют исходный список
Однако у списков есть кое‑что общее со строками. И это доступ к элементу по индексу и срезы. Все это работает в списках точно так же, как и в строках
guests = ['Валера', 'Саша', 'АНДРЮХА', 'Ваня']
print(guests[2])
print(guests[-1])
print(guests[:2])
И вывод:
АНДРЮХА
Ваня
['Валера', 'Саша']
На этом все
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
Кортежи (1 часть ) — что это такое и чем отличаются от списков? Сегодня остановимся на этой теме 😎 .
По сути, кортеж является контейнером, который хранит в себе объекты в определенном порядке. В отличие от списков, кортежи неизменяемы😭 . То есть как только вы создали кортеж:
Эти неизменные кортежи объявляются с помощью круглых скобок, а элементы в кортеже должны быть разделены запятыми, все по классике❤️ . Сходу рассмотрим несколько вариантов создания кортежей:
Вариант №1 с использованием встроенной функции "tuple()"🫡 :
Вывод программы будет следующим:
Вариант №2, в котором нужно просто перечислить объекты через запятую1️⃣ :
Вывод программы соответственно:
Если вам мозолит глаза запятая, которая стоит в примере кортежа с одним элементом (Вариант №2 ) — придется смириться 😭 , так как таким образом Python отличает кортеж от числа в скобках (скобках, которые в этом случае будут определять порядок выполнения операций 😮💨 ).
Теперь проговорим про то, как получать элементы кортежа. Спойлер: все также, по индексу элемента, как и со списками (про них писал в посте выше 😄 ). К тому же, отметим, что можно провести проверку наличия или отсутствия элемента в кортеже с помощью ключевых слов "in" и "not in", пример будет ниже (с помощью этих ключевых слов также можно проверять наличие или отсутствие элементов в списках, но про это, в посте выше — я не писал ☹️ ).
Вывод программы будет☕️ :
Что-то много слов получается, поэтому вторую часть закину следующим постом, надеюсь, что не ночью, как в этот раз✨ .
#статья 📚
По сути, кортеж является контейнером, который хранит в себе объекты в определенном порядке. В отличие от списков, кортежи неизменяемы
• Значение какого-либо его элемента уже нельзя изменить.
• Нельзя добавлять или удалять элементы👊 .
Эти неизменные кортежи объявляются с помощью круглых скобок, а элементы в кортеже должны быть разделены запятыми, все по классике
Вариант №1 с использованием встроенной функции "tuple()"
# Ничего не передаем в функцию tuple()
tuple_1 = tuple()
print("Кортеж №1:", tuple_1)
# Передаем в функцию tuple() список
spisok = [ 1, 2, 3, 4, 5 ]
tuple_2 = tuple(spisok)
print("Кортеж №2:", tuple_2)
# Передаем в функцию tuple() строку
stroka = "chupappi"
tuple_3 = tuple(stroka)
print("Кортеж №3:", tuple_3)
Вывод программы будет следующим:
Кортеж №1: ()
Кортеж №2: (1, 2, 3, 4, 5)
Кортеж №3: ('c', 'h', 'u', 'p', 'a', 'p', 'p', 'i')
Вариант №2, в котором нужно просто перечислить объекты через запятую
# Пример кортежа с одним элементом
tuple_1 = ('lonely',)
print("Кортеж №1:", tuple_1)
# Пример кортежа с несколькими элементами
tuple_2 = ('Все','на','месте','спортсмены?')
print("Кортеж №2:", tuple_2)
Вывод программы соответственно:
Кортеж №1: ('lonely',)
Кортеж №2: ('Все', 'на', 'месте', 'спортсмены?')
Если вам мозолит глаза запятая, которая стоит в примере кортежа с одним элементом (
Теперь проговорим про то, как получать элементы кортежа. Спойлер: все также, по индексу элемента, как и со списками (
tuple_1 = ('Антон','Ваня','Миша','Рома')
# тестим in
print('Миша' in tuple_1)
print('Андрей' in tuple_1)
# тестим not in
print('Миша' not in tuple_1)
print('Андрей' not in tuple_1)Вывод программы будет
True ('Миша' есть в кортеже → да )
False ('Андрей' есть в кортеже → нет )
False ('Миша' не в кортеже → нет )
True ('Андрей' не в кортеже → да )
Что-то много слов получается, поэтому вторую часть закину следующим постом, надеюсь, что не ночью, как в этот раз
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡13 6 5 3 2 2
Давайте уже добьем историю с кортежами, поэтому вот вторая часть по ним 💪 .
В прошлом посте мы поговорили про то, как задавать кортежи, обращаться к элементам кортежей и про ключевые слова "in", "not in". Ниже предлагаю затронуть сложение (ну или конкатенацию, как вам больше нравится 😄 ) и итерирование (ну или поэлементное перечисление, как вам больше нравится 😄 ). Поехали!
Сложение "+". При помощи оператора сложения можно соединять друг с другом две одинаковые структуры данных. Ниже сразу закинем пример с кортежами☕️ :
Вывод программы будет таким:
Итерирование. Кортежи (списки и строки, кстати, тоже, но я уверен, что вы знаете это 😘 ) поддерживают итерирование, то есть к каждому их элементу можно получить доступ через цикл, например, "while", "for". Каждый элемент в итерируемом объекте, как мы уже знаем, имеет свой порядковый индекс 1️⃣ . Рассмотрим сразу пример, в котором в цикле "for" перечислим элементы и выведем их порядковые номера:
Скомпилируем код и получим:
Быстренько разберем код выше с циклом "for":
Подытожим, цикл "for", например, можно использовать, чтобы определять инструкции, которые будут выполняться один раз для каждого элемента в итерируемом объекте, и с помощью таких инструкций вы можете получать доступ ко всем этим элементам и осуществлять операции с ними☕️ .
Также, вам может стать интересно, зачем же использовать кортежи, которые неизменяемы (про это в прошлом посте ✍️ ), если есть списки?
На самом же деле, кортежи удобны, когда вы имеете дело со значениями, которые никогда не изменятся. Например, когда нужно работать с географическими координатами различных объектов. Если сохранить долготу и широту города в кортеже, можно гарантировать, что другие части программы случайно их не изменят. Вот такой вот плюс✨ .
На этом можно будет закончить🤫 .
#статья 📚
В прошлом посте мы поговорили про то, как задавать кортежи, обращаться к элементам кортежей и про ключевые слова "in", "not in". Ниже предлагаю затронуть сложение (
Сложение "+". При помощи оператора сложения можно соединять друг с другом две одинаковые структуры данных. Ниже сразу закинем пример с кортежами
# сложим два кортежа и выведем их
tuple_1 = ('Привет', 'я', 'Мален')
tuple_2 = ('Да', 'Мален', 'это', 'имя')
summarny_tuple = tuple_1 + tuple_2
print(summarny_tuple)
Вывод программы будет таким:
('Привет', 'я', 'Мален', 'Да', 'Мален', 'это', 'имя')
Итерирование. Кортежи (
colors = ('Красный', 'Зеленый', 'Синий', 'Оранжевый', 'Черный', 'Белый')
for element in colors:
print('Элемент:', element)
print('Индекс:', colors.index(element))
print('\n')Скомпилируем код и получим:
Элемент: Красный
Индекс: 0
Элемент: Зеленый
Индекс: 1
Элемент: Синий
Индекс: 2
Элемент: Оранжевый
Индекс: 3
Элемент: Черный
Индекс: 4
Элемент: Белый
Индекс: 5
Быстренько разберем код выше с циклом "for":
• В строке №1 задаем наш«цветной» кортеж.
• В строке №2 создаем цикл " for ", в котором проходим по всем элементам нашего кортежа.
• В строке №3 выводим элемент с помощью функции " print() ".
• В строке №4 выводим индекс элемента используя метод " .index() ".
• В строке №5 Добавляем отступ для того, что бы вывод программы был покрасивее (чисто на мой взгляд ✨ ).
Подытожим, цикл "for", например, можно использовать, чтобы определять инструкции, которые будут выполняться один раз для каждого элемента в итерируемом объекте, и с помощью таких инструкций вы можете получать доступ ко всем этим элементам и осуществлять операции с ними
Также, вам может стать интересно, зачем же использовать кортежи, которые неизменяемы (
На самом же деле, кортежи удобны, когда вы имеете дело со значениями, которые никогда не изменятся. Например, когда нужно работать с географическими координатами различных объектов. Если сохранить долготу и широту города в кортеже, можно гарантировать, что другие части программы случайно их не изменят. Вот такой вот плюс
На этом можно будет закончить
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM
По спискам прошлись, по кортежам прошлись, но кое-что еще осталось 🤫 . Заключительный "персонаж" нашей троицы - словарь 😄 .
Сегодня предлагаю раскидать про него, ну или по них💡 .
Итак, словари — еще один встроенный тип данных для хранения объектов. Их используют для того, чтобы связывать один объект, называемый ключом, с другим объектом, называемым значением. Если описывать словарь в виде своеобразной формулы, то получится следующее😎 :
Сразу предлагаю накидать несколько фактов о словарях (как будто они прислали + кому-то в директ. Кто понял, тот понял 😄 ):
После фактов давайте приведем примеры ситуаций, когда нам вообще могут понадобиться эти словари:
Теперь пришла очередь примеров✍️ . Давайте создадим классическую телефонную книжку в виде словаря c одним номером, а затем добавим в нее еще парочку номеров, плюс выведем какое-нибудь значение (в примере — это номер ) по ключу (в примере — это имя ):
Вывод такой программы представлен ниже:
Кратенько подытожим:
1. Если в нашем словаре одна пара ключ-значение, то после нее не нужно ставить "," как в случае с кортежами☕️ . (P.S. — про кортежи можно почитать в посте выше )
2. Как только вы создали словарь, можно добавлять в него пары ключ-значение, используя синтаксис, который имеет следующий общий вид: "имя_словаря[ключ] = значение"✨ .
3. Чтобы найти значение при помощи ключа можно использовать синтаксис с видом: " имя_словаря[ключ] "❤️ .
База по словарям есть, поэтому про методы и возможности работы со словарями распишем в следующем посте. Кстати, забыл сказать, что количество реакций влияет на скорость выхода нового поста, а может быть и нет...😄 .
#статья 📚
Сегодня предлагаю раскидать про него, ну или по них
Итак, словари — еще один встроенный тип данных для хранения объектов. Их используют для того, чтобы связывать один объект, называемый ключом, с другим объектом, называемым значением. Если описывать словарь в виде своеобразной формулы, то получится следующее
Словарь - {"Какой-то ключ" : "Какое-то значение"}
Сразу предлагаю накидать несколько фактов о словарях (
• Связывание ключа и значения c помощью словаря называется отображением.
• Результатом отображения будет пара: ключ-значение.
• По определенному ключу можно найти соответствующее значение, однако по значению соответствующий ключ искать нельзя☹️ .
• Словари изменяемы (как и списки ),то есть в них можно добавлять новые пары ключ-значение😮💨 .
• В словаре может быть несколько пар ключ-значение1️⃣ .
• У одного ключа может быть несколько значений, но не наоборот. То есть ключ — уникален, а значение — нет😭 .
После фактов давайте приведем примеры ситуаций, когда нам вообще могут понадобиться эти словари:
• Когда нужно хранить свойства определенного объекта. Тогда ключом будет сам объект, а значением — его свойства🍔 .
• Когда нужно быстро получить значение по определенному ключу. Предположим, вы создали словарь, в котором ключ - имя вашего друга, а значение — его телефон. В итоге, можно по имени быстро получить необходимый номер📞 .
• Когда нужно считать количество определенных слов в тексте (да-да, такое иногда реально нужно ☹️ ). В таком случае, результаты подсчета удобно представить в виде словаря, в котором ключ — это определенное слово, а значение — количество его появлений в тексте.
Теперь пришла очередь примеров
# создаем нашу телефонную книгу
TypicalPhoneBook = {
'Братанчик': '+71234567890'
}
# выводим телефонную книгу после создания
print('Создали телефонную книгу:', TypicalPhoneBook)
print('\n')
# добавляем в нее пару номеров
TypicalPhoneBook['Лютый перец'] = '+79876543210'
TypicalPhoneBook['Скам, не брать'] = '+70000000000'
# выводим телефонную книгу после добавления номеров
print('Добавили в нее пару номеров:', TypicalPhoneBook)
print('\n')
# выводим значение по ключу:
print('Номер телефона братанчика:', TypicalPhoneBook['Братанчик'])
print('\n')
Вывод такой программы представлен ниже:
Создали телефонную книгу: {'Братанчик': '+71234567890'}
Добавили в нее пару номеров: {'Братанчик': '+71234567890', 'Лютый перец': '+79876543210', 'Скам, не брать': '+70000000000'}
Номер телефона братанчика: +71234567890
Кратенько подытожим:
1. Если в нашем словаре одна пара ключ-значение, то после нее не нужно ставить "," как в случае с кортежами
2. Как только вы создали словарь, можно добавлять в него пары ключ-значение, используя синтаксис, который имеет следующий общий вид: "имя_словаря[ключ] = значение"
3. Чтобы найти значение при помощи ключа можно использовать синтаксис с видом: " имя_словаря[ключ] "
База по словарям есть, поэтому про методы и возможности работы со словарями распишем в следующем посте. Кстати, забыл сказать, что количество реакций влияет на скорость выхода нового поста, а может быть и нет...
#статья 📚
Please open Telegram to view this post
VIEW IN TELEGRAM