Пишем игру Сапер на Python
Сегодня мы напишем одну из самых распространенных игр - сапер. Для графического интерфейса будем использовать библиотеку tkinter.
Подробнее
Сегодня мы напишем одну из самых распространенных игр - сапер. Для графического интерфейса будем использовать библиотеку tkinter.
Подробнее
👍9🔥3
Forwarded from Python академия
Упаковка параметров с помощью urlencode
Новая неделя – новые знания. В это утро понедельника я подготовил для вас крайне практичный пост.
Довольно часто приходится работать с разнообразными API и совершать get-запросы с передачей множества параметров. Чаще всего составление запроса в коде выглядит примерно так:
Смотрится не слишком презентабельно, однако есть слегка более длинный, но значительно улучающий читаемость кода вариант – функция
Подписывайтесь на канал 👉@pythonofff
Новая неделя – новые знания. В это утро понедельника я подготовил для вас крайне практичный пост.
Довольно часто приходится работать с разнообразными API и совершать get-запросы с передачей множества параметров. Чаще всего составление запроса в коде выглядит примерно так:
url = 'https://example.com?item={}&size={}&color={}&amount={}'.format('t-shirt', 'M', 'white', 5)
Смотрится не слишком презентабельно, однако есть слегка более длинный, но значительно улучающий читаемость кода вариант – функция
urlencode
из из модуля urllib
. Подписывайтесь на канал 👉@pythonofff
👍11👎1
В чем разница между списком и кортежем?
Мне задавали этот вопрос буквально на каждом собеседовании по Python/data science. Выучите ответ как свои пять пальцев:
1️⃣ Список можно изменить после создания.
2️⃣ Кортеж нельзя изменить после создания.
3️⃣ Список упорядочен. Он представляет собой упорядоченные последовательности объектов, как правило, одного и того же типа. Например, все имена пользователей упорядочены по дате создания: [«Seth», «Ema», «Eli»].
4️⃣ У кортежа есть структура. В каждом индексе могут сосуществовать различные типы данных. Например, такая запись базы данных в памяти: (2, «Ema», «2020–04–16») # id, name, created_at.
Мне задавали этот вопрос буквально на каждом собеседовании по Python/data science. Выучите ответ как свои пять пальцев:
1️⃣ Список можно изменить после создания.
2️⃣ Кортеж нельзя изменить после создания.
3️⃣ Список упорядочен. Он представляет собой упорядоченные последовательности объектов, как правило, одного и того же типа. Например, все имена пользователей упорядочены по дате создания: [«Seth», «Ema», «Eli»].
4️⃣ У кортежа есть структура. В каждом индексе могут сосуществовать различные типы данных. Например, такая запись базы данных в памяти: (2, «Ema», «2020–04–16») # id, name, created_at.
👎15👍9
10 неизвестных подводных камней безопасности для Python.
https://blog.sonarsource.com/10-unknown-security-pitfalls-for-python
https://blog.sonarsource.com/10-unknown-security-pitfalls-for-python
👍3
Пишем логическую игру пятнашки на Python
Сегодня мы напишем на Python свою версию популярной логической игры - пятнашки. Цель игры заключается в том чтобы перемещая блоки в рамке упорядочить их по номерам.
Подробнее
Сегодня мы напишем на Python свою версию популярной логической игры - пятнашки. Цель игры заключается в том чтобы перемещая блоки в рамке упорядочить их по номерам.
Подробнее
👍4
Forwarded from Python академия
Официальное упорядочивание словарей
Кстати, Python 3.7 на официальном уровне зафиксировал соответствие порядка перебора элементов словарей порядку их добавления.
Но для некоторых это не такая уж и новость, так как и в Python 3.6 словари уже были упорядочены, что видно на примере выше.
Однако это был просто побочный результат реализации, не зафиксированный в стандарте. Новый Python оформил его официально. Теперь можно быть уверенным в сохранении порядка вставки.
Подписывайтесь на канал 👉@pythonofff
Кстати, Python 3.7 на официальном уровне зафиксировал соответствие порядка перебора элементов словарей порядку их добавления.
Но для некоторых это не такая уж и новость, так как и в Python 3.6 словари уже были упорядочены, что видно на примере выше.
Однако это был просто побочный результат реализации, не зафиксированный в стандарте. Новый Python оформил его официально. Теперь можно быть уверенным в сохранении порядка вставки.
Подписывайтесь на канал 👉@pythonofff
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
30 лучших Python-проектов на GitHub на начало 2022 года
Наверняка многим из вас любопытно было бы узнать, какие Python-проекты являются самыми популярными на начало 2022 года. GitHub, безусловно, лучшее место для получения этой статистики. Пусть здесь можно найти не все проекты, но ему нет достойной альтернативы.
Подробнее
Наверняка многим из вас любопытно было бы узнать, какие Python-проекты являются самыми популярными на начало 2022 года. GitHub, безусловно, лучшее место для получения этой статистики. Пусть здесь можно найти не все проекты, но ему нет достойной альтернативы.
Подробнее
👍6
Список вопросов с собеседований по Python
https://bookflow.ru/spisok-voprosov-s-sobesedovanij-po-python/
https://bookflow.ru/spisok-voprosov-s-sobesedovanij-po-python/
Forwarded from Python академия
"Быстрый" контейнер deque
Структура
К тому же, контейнер
Также для
Структура
deque
предпочтительнее, чем обычный список, в тех случаях, когда нам нужны более быстрые операции добавления и вытягивания элементов из обоих концов контейнера.К тому же, контейнер
deque
обеспечивает линейную сложность O(1) для операций добавления и выталкивания по сравнению со стандартным списком, у которого сложность по времени для тех же операций составляет O(n).Также для
deque
есть возможность использовать такие стандартные функции, как sum
, min
, max
и другие.👍5🔥1
Нейронный машинный перевод на языке Python с открытым исходным кодом. Предназначен для использования в качестве библиотеки Python или настольного приложения. Использует OpenNMT для перевода и PyQt для графического интерфейса.
https://github.com/argosopentech/argos-translate
https://github.com/argosopentech/argos-translate
👍5🔥3
Forwarded from Python академия
Дизассемблирование
Встроенный модуль
На картинке показана работа этого модуля на примере функции, но такое можно повторить и с классами – в таком случае все его функции будут дизассемблированы.
Подписывайтесь на канал 👉@pythonofff
Встроенный модуль
dis
позволяет декомпилировать написанную вами программу в байт-код Python.На картинке показана работа этого модуля на примере функции, но такое можно повторить и с классами – в таком случае все его функции будут дизассемблированы.
Подписывайтесь на канал 👉@pythonofff
👍6
Змейка на Python
Сегодня мы напишем игру змейка на Python. Это одна из самых распространенных аркад в мире. В основе ее реализации будет два класса:
- Класс сегмента (одного блока змейки).
- Класс змеи (по сути собрание сегментов).
Подробнее
Сегодня мы напишем игру змейка на Python. Это одна из самых распространенных аркад в мире. В основе ее реализации будет два класса:
- Класс сегмента (одного блока змейки).
- Класс змеи (по сути собрание сегментов).
Подробнее
👍4
На курсе «Мидл python-разработчик» студенты учатся продвинутой бэкенд-разработке и получают проекты в портфолио без NDA.
→ Приходите учиться, если вы знакомы с основами Python, базами данных и API. Мы поможем стать уверенным мидлом за шесть месяцев, а не за полтора года.
Курс научит решать задачи с хранилищами данных, работать с синхронными и асинхронными фреймворками, проектировать лаконичную архитектуру, а ещё — даст опыт командной разработки.
Что будет на учёбе:
⬛️ Код-ревью и обратная связь от старших разработчиков из Яндекса и других IT-компаний.
⬛️ Вся необходимая теория в одном месте.
⬛️ Обучение в команде на реальных рабочих задачах: студенты создадут сервисы для полноценного онлайн-кинотеатра в GitHub.
⬛️ Наставники помогут разобраться с трудностями и поделятся опытом на вебинарах и демо.
⬛️ Кураторы и дедлайны не дадут прокрастинировать.
⬛️ Карьерные консультации: наши специалисты помогут найти новый проект или сделать так, чтобы на текущей работе вам начали давать более амбициозные задачи.
→ Старт потока — 24 февраля. Учёба длится шесть месяцев.
→ Познакомьтесь с курсом и оцените свои силы во вступительном тестировании — это бесплатно.
→ Приходите учиться, если вы знакомы с основами Python, базами данных и API. Мы поможем стать уверенным мидлом за шесть месяцев, а не за полтора года.
Курс научит решать задачи с хранилищами данных, работать с синхронными и асинхронными фреймворками, проектировать лаконичную архитектуру, а ещё — даст опыт командной разработки.
Что будет на учёбе:
⬛️ Код-ревью и обратная связь от старших разработчиков из Яндекса и других IT-компаний.
⬛️ Вся необходимая теория в одном месте.
⬛️ Обучение в команде на реальных рабочих задачах: студенты создадут сервисы для полноценного онлайн-кинотеатра в GitHub.
⬛️ Наставники помогут разобраться с трудностями и поделятся опытом на вебинарах и демо.
⬛️ Кураторы и дедлайны не дадут прокрастинировать.
⬛️ Карьерные консультации: наши специалисты помогут найти новый проект или сделать так, чтобы на текущей работе вам начали давать более амбициозные задачи.
→ Старт потока — 24 февраля. Учёба длится шесть месяцев.
→ Познакомьтесь с курсом и оцените свои силы во вступительном тестировании — это бесплатно.
👍7👎1
Forwarded from Python академия
Форматирование строк
Привет, в этом посте разберем возможные в Python методы форматирования строк. Все примеры использования можете посмотреть на прикрепленной ниже картинке.
Самый древний и уже редко используемый способ – с помощью оператора
В Python 2.6 появился метод
Начиная с версии Python 3.6, доступны f-строки – свежий и наиболее производительный способ форматирования строк.
Подписывайтесь на канал 👉@pythonofff
Привет, в этом посте разберем возможные в Python методы форматирования строк. Все примеры использования можете посмотреть на прикрепленной ниже картинке.
Самый древний и уже редко используемый способ – с помощью оператора
%
. Написание %s
и %d
зависит от того, что мы туда передаем и что хотим увидеть в итоге, но это уже тема отдельного поста.В Python 2.6 появился метод
.format()
с немного отличающимся синтаксисом от существующего оператора %
. К слову, этот метод активно используется и по сей день, в отличии от его предшественника.Начиная с версии Python 3.6, доступны f-строки – свежий и наиболее производительный способ форматирования строк.
Подписывайтесь на канал 👉@pythonofff
👍3
Нижнее подчеркивание в Python
Давайте разберемся, зачем в Python используется нижнее подчеркивание.
Многие разработчики Python не знают о функциях символа нижнего подчеркивания. А между тем, его использование помогает писать код более эффективно.
Нижнее подчеркивание (_) — это уникальный символ.
Подробнее
Давайте разберемся, зачем в Python используется нижнее подчеркивание.
Многие разработчики Python не знают о функциях символа нижнего подчеркивания. А между тем, его использование помогает писать код более эффективно.
Нижнее подчеркивание (_) — это уникальный символ.
Подробнее
👍11👎1🔥1
Яндекс ищет тех, кто пишет на Python или Go
А также тех, кто хочет перейти на них с другого языка программирования. Не пропустите момент и успейте зарегистрироваться на Fast Track для бэкенд-разработчиков 26–27 февраля. Отборочный этап длится до 23 февраля, спешите! На мероприятии, которое пройдет в онлайн-формате, вы сможете за пару дней получить оффер в команду, которая разрабатывает FinOps платформу Яндекса.
FinOps платформа — это внутренняя высоконагруженная финансово-операционная система, через которую проходят денежные транзакции всех сервисов Яндекса. Приходите работать с нами, задачи сложные, но действительно интересные.
Регистрируйтесь, проходите отборочный этап и до встречи 26 и 27 февраля!
А также тех, кто хочет перейти на них с другого языка программирования. Не пропустите момент и успейте зарегистрироваться на Fast Track для бэкенд-разработчиков 26–27 февраля. Отборочный этап длится до 23 февраля, спешите! На мероприятии, которое пройдет в онлайн-формате, вы сможете за пару дней получить оффер в команду, которая разрабатывает FinOps платформу Яндекса.
FinOps платформа — это внутренняя высоконагруженная финансово-операционная система, через которую проходят денежные транзакции всех сервисов Яндекса. Приходите работать с нами, задачи сложные, но действительно интересные.
Регистрируйтесь, проходите отборочный этап и до встречи 26 и 27 февраля!
👍4
Forwarded from Python академия
Списковые включения.
В python можно заменить громоздкие циклы, которые используются для заполнения списков. Самый простой пример использования списковых включений представлен в первом примере.
В примере 2 показано как можно добавить немного математики.
Вы даже можете использовать свои функции, как в примере 3.
Ну и куда без условного оператора? Посмотреть пример в онлайн редакторе.
Подписывайтесь на канал 👉@pythonofff
В python можно заменить громоздкие циклы, которые используются для заполнения списков. Самый простой пример использования списковых включений представлен в первом примере.
В примере 2 показано как можно добавить немного математики.
Вы даже можете использовать свои функции, как в примере 3.
Ну и куда без условного оператора? Посмотреть пример в онлайн редакторе.
Подписывайтесь на канал 👉@pythonofff
👍5👎1
Forwarded from Python академия
Нахождение наиболее частых элементов списка
Если необходимо найти несколько наиболее часто повторяющихся значений, лучше воспользоваться счетчиком
Метод
Подписывайтесь на канал 👉@pythonofff
#collections #counter
Если необходимо найти несколько наиболее часто повторяющихся значений, лучше воспользоваться счетчиком
Counter
из библиотеки collections
.Метод
Counter.most_common(x)
возвращает x
кортежей, в которых первое значение – элемент, а второе – количество его повторений. Подписывайтесь на канал 👉@pythonofff
#collections #counter
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Pyxel для любителей ретро игр
Pyxel -- это игровой движок для Python в стиле ретро.
Благодаря своей простоте, вдохновленной старыми игровыми консолями (например, палитра состоит всего из 16 цветов, и только 4 звука могут быть проиграны одновременно), вы можете легко создавать игры в стиле пиксель-арт.
Rus https://habr.com/ru/post/652225/
Eng https://github.com/kitao/pyxel/blob/main/README.md
Pyxel -- это игровой движок для Python в стиле ретро.
Благодаря своей простоте, вдохновленной старыми игровыми консолями (например, палитра состоит всего из 16 цветов, и только 4 звука могут быть проиграны одновременно), вы можете легко создавать игры в стиле пиксель-арт.
Rus https://habr.com/ru/post/652225/
Eng https://github.com/kitao/pyxel/blob/main/README.md
👍4
Forwarded from Python академия
Функция zip
Функция
Подписывайтесь на канал 👉@pythonofff
#функции #zip
Функция
zip
создаёт итератор, который комбинирует элементы нескольких списков. Это позволяет осуществлять параллельный обход списков в циклах for
или, например, выполнять параллельную сортировку. Подписывайтесь на канал 👉@pythonofff
#функции #zip
👍5