Разбираем Теорию Игр с Python-библиотеками nashpy и axelrod
Наверняка вы хоть когда-нибудь играли в «Камень, ножницы, бумага»? Может показаться, что победа в этой игре случайна. Но на самом деле игроки часто пытаются предсказать, какой будет стратегия противник, и выбрать выигрышный ход.
Что самое интересное, эти стратегии могут быть смоделированы с помощью теории игр. А сама теория применима, не только к играм, но и к политическим сценариям, ситуациям в бизнесе и даже экономике.
И вот одна из немногих интересных статей на эту тему: https://habr.com/ru/post/713120/
Наверняка вы хоть когда-нибудь играли в «Камень, ножницы, бумага»? Может показаться, что победа в этой игре случайна. Но на самом деле игроки часто пытаются предсказать, какой будет стратегия противник, и выбрать выигрышный ход.
Что самое интересное, эти стратегии могут быть смоделированы с помощью теории игр. А сама теория применима, не только к играм, но и к политическим сценариям, ситуациям в бизнесе и даже экономике.
И вот одна из немногих интересных статей на эту тему: https://habr.com/ru/post/713120/
👍12🔥3😁1
Что скажет ChatGPT: Почему Python такой популярный?
Кто-то с помощью ChatGPT пишет дипломы, кто-то — код, а мы попросили ChatGPT написать целую статью про то, как Python набирал популярность с 1990-х годов и почему стал популярен в Data Sceince, Machine Learning, веб-разработке и разработке игр.
Пока человеческий админ пошёл собирать вещи, посмотрите, как получается у ChatGPT писать целые статьи: https://tproger.ru/articles/pochemu-python-takoj-populjarnyj/
#chatgpt #ml
Кто-то с помощью ChatGPT пишет дипломы, кто-то — код, а мы попросили ChatGPT написать целую статью про то, как Python набирал популярность с 1990-х годов и почему стал популярен в Data Sceince, Machine Learning, веб-разработке и разработке игр.
Пока человеческий админ пошёл собирать вещи, посмотрите, как получается у ChatGPT писать целые статьи: https://tproger.ru/articles/pochemu-python-takoj-populjarnyj/
#chatgpt #ml
🤮6👍5🔥1
Самые популярные вопросы на собеседовании: «Как выполняется обработка исключений в Python?»
Это база, но всё равно новички часто плавают в исключениях или используют их не в полной мере. Давайте разбираться, как делать это правильно.
Для обработки исключений Python предоставляет конструкцию из трех слов:
Синтаксис выглядит примерно так:
Например, код:
Выдаст:
Здесь блок
#собеседование
Это база, но всё равно новички часто плавают в исключениях или используют их не в полной мере. Давайте разбираться, как делать это правильно.
Для обработки исключений Python предоставляет конструкцию из трех слов:
try
, except
и finally
.Синтаксис выглядит примерно так:
try:
# пробуем это
except:
# если try не сработал, пробуем это
finally:
# в любом случае делаем это
Например, код:
try:
val = 1 + 'A'
except:
val = 10
finally:
print('complete')
print(val)
Выдаст:
#=> complete
#=> 10
Здесь блок
try
терпит неудачу, ведь мы не можем складывать целые числа со строками. Блок except
устанавливает val = 10
, а затем блок finally
выводит complete
.#собеседование
🔥23👍11💩2
Стек технологий для Python
Просто небольшая заметка, где Senior Python Developer советует инструменты и технологии, которые повсеместно применяют разработчики на Python:
https://tproger.ru/articles/stek-tehnologij-dlja-python-sovetuet-jespert/
#начинающим #инструменты
Просто небольшая заметка, где Senior Python Developer советует инструменты и технологии, которые повсеместно применяют разработчики на Python:
https://tproger.ru/articles/stek-tehnologij-dlja-python-sovetuet-jespert/
#начинающим #инструменты
👍5💩3❤1
Внезапно, но сервис, в котором можно выучить «всё»
Просто вбиваете запрос и сервис выводит небольшой роадмап. Админ попробовал «питонические» запросы а-ля Python, Pandas и др. И это как минимум забавно. Но что интересно, там есть информация практически по любому запросу — пусть местами скудно, но всё равно есть.
В общем, попробуйте: https://learn-anything.xyz/
#инструменты
Просто вбиваете запрос и сервис выводит небольшой роадмап. Админ попробовал «питонические» запросы а-ля Python, Pandas и др. И это как минимум забавно. Но что интересно, там есть информация практически по любому запросу — пусть местами скудно, но всё равно есть.
В общем, попробуйте: https://learn-anything.xyz/
#инструменты
👍22👎2
Особенности семантики exactly-once при разработке для Kafka на Python
Exactly-once — это подход, при котором сообщение доставляется получателю строго один раз, без дублирования и потери данных.
В статье рассказали про особенности семантики exactly-once на примере разработки проекта на Kafka и Python для сортировки данных: https://tproger.ru/articles/osobennosti-semantiki-exactly-once-pri-razrabotke-dlja-kafka-na-python/
Exactly-once — это подход, при котором сообщение доставляется получателю строго один раз, без дублирования и потери данных.
В статье рассказали про особенности семантики exactly-once на примере разработки проекта на Kafka и Python для сортировки данных: https://tproger.ru/articles/osobennosti-semantiki-exactly-once-pri-razrabotke-dlja-kafka-na-python/
Подборка актуальных вакансий для Python-разработчиков:
— Python-разработчик
Где: Москва
Опыт: от 3 лет
— Специалист информационной безопасности ИТ-инфраструктуры
Где: Москва
Опыт: от 1 года
— Senior Python-разработчик
Где: Москва
Опыт: от 3 лет
— Middle DevOps Engineer (Big Data)
Где: Москва, можно удалённо
Опыт: от 3 лет
— Data Engineer (Big Data)
Где: Москва, можно удалённо
Опыт: от 1 года
#вакансии #работа
— Python-разработчик
Где: Москва
Опыт: от 3 лет
— Специалист информационной безопасности ИТ-инфраструктуры
Где: Москва
Опыт: от 1 года
— Senior Python-разработчик
Где: Москва
Опыт: от 3 лет
— Middle DevOps Engineer (Big Data)
Где: Москва, можно удалённо
Опыт: от 3 лет
— Data Engineer (Big Data)
Где: Москва, можно удалённо
Опыт: от 1 года
#вакансии #работа
💩16👍3
Forwarded from Python: задачки и вопросы
👍10
Forwarded from Python: задачки и вопросы
Объяснение:
Списки
— изменяемый тип данных. Поэтому под два разных списка создаётся отдельный объект. Даже если их значения одинаковые👍32
Тестируем на Python: unittest и pytest
Ничего нельзя сделать без ошибок, и с программами — то же самое. Если вы написали рабочий код, как узнать, что будет при реальном использовании? Поведёт ли себя программа так, как от неё ожидают, или что-нибудь выкинет?
Именно поэтому при создании программ 75% времени уходит вовсе не на программирование, а как раз-таки на тесты. И если вы не хотите тратить время на тесты в самом начале, вы всё равно потратите его потом, только в большем количестве.
И вот отличная статья, в которой рассказывают, как правильно проводить тестирование приложений в Python, используя unittest и pytest:
https://tproger.ru/articles/testiruem-na-python-unittest-i-pytest-instrukcija-dlja-nachinajushhih/
#qa
Ничего нельзя сделать без ошибок, и с программами — то же самое. Если вы написали рабочий код, как узнать, что будет при реальном использовании? Поведёт ли себя программа так, как от неё ожидают, или что-нибудь выкинет?
Именно поэтому при создании программ 75% времени уходит вовсе не на программирование, а как раз-таки на тесты. И если вы не хотите тратить время на тесты в самом начале, вы всё равно потратите его потом, только в большем количестве.
И вот отличная статья, в которой рассказывают, как правильно проводить тестирование приложений в Python, используя unittest и pytest:
https://tproger.ru/articles/testiruem-na-python-unittest-i-pytest-instrukcija-dlja-nachinajushhih/
#qa
👍18🔥1
Как устроена RecTools — OpenSource–библиотека для рекомендательных систем
В этой статье мы рассмотрим открытую библиотеку RecTools для рекомендательных систем, позволяющую разработчикам и исследователям создавать эффективные алгоритмы машинного обучения.
Рассказываем о достоинствах и недостатках RecTools и как она может быть использована в ваших проектах: https://tprg.ru/CgJX
#ml
В этой статье мы рассмотрим открытую библиотеку RecTools для рекомендательных систем, позволяющую разработчикам и исследователям создавать эффективные алгоритмы машинного обучения.
Рассказываем о достоинствах и недостатках RecTools и как она может быть использована в ваших проектах: https://tprg.ru/CgJX
#ml
👍16👎1
Самые популярные вопросы на собеседовании: «В чем разница между is и ==?»
Это вопрос с подвохом, и начинающие разработчики часто не видят разницы. И… привет, баги! Так что давайте разбираться, в чём же разница.
Если просто, то
Если проверим равенство, то все объекты будут равны:
А вот если мы проверим их идентичность, то получается следующее:
Несмотря на одинаковое содержимое, сами списки представлены разными объектами в памяти, поэтому оператор
Это всё, что нужно знать про
#собеседование
Это вопрос с подвохом, и начинающие разработчики часто не видят разницы. И… привет, баги! Так что давайте разбираться, в чём же разница.
Если просто, то
is
проверяет идентичность, а ==
проверяет равенство. Чтобы лучше понять, создадим 2 списка, а переменной b
присвоим значение списка a
:a = [1,2,3]
b = a
c = [1,2,3]
Если проверим равенство, то все объекты будут равны:
print(a == b) #=> True
print(a == c) #=> True
А вот если мы проверим их идентичность, то получается следующее:
print(a is b) #=> True
print(a is c) #=> False
Несмотря на одинаковое содержимое, сами списки представлены разными объектами в памяти, поэтому оператор
is
для одинаковых списков возвращает False
. Проверить очень просто — у объектов будут разные идентификаторы:print(id(a)) #=> 4369567560
print(id(b)) #=> 4369567560
print(id(c)) #=> 4369567624
Это всё, что нужно знать про
is
и ==
на базовом уровне. Но есть несколько лайфхаков и нюансов, которые помогут использовать эти операторы на полную катушку. О них расскажу чуть позже.#собеседование
👍62🔥2🥰2💯2🐳1
Где полезна асинхронность в Python, а где — нет
Наткнулся на интересную статью прям для самых начинающих, в которой на пальцах разбирают плюсы и минусы асинхронного программирования, зачем оно нужно и какие задачи решает.
Если вы новичок и ещё не разбирались в синхронном/асинхронном программировании, не слышали про параллелизм и не знаете, зачем все этим заумные слова придумали, это заметка поможет разобраться:
https://habr.com/ru/company/kts/blog/713084/
#начинающим
Наткнулся на интересную статью прям для самых начинающих, в которой на пальцах разбирают плюсы и минусы асинхронного программирования, зачем оно нужно и какие задачи решает.
Если вы новичок и ещё не разбирались в синхронном/асинхронном программировании, не слышали про параллелизм и не знаете, зачем все этим заумные слова придумали, это заметка поможет разобраться:
https://habr.com/ru/company/kts/blog/713084/
#начинающим
🔥8❤4👍3