Python Lounge: работа и стажировки для программистов – Telegram
Python Lounge: работа и стажировки для программистов
3.91K subscribers
93 photos
1.17K links
Здесь можно найти интересующую вас работу и стажировки для программистов, а так же полезные статьи про Python.

Размещение вакансии только - @perezvonyubot

Ссылка на канал: @python_lounge

Мы входим в сеть promopoisk.com

Реклама: @adtgassetsbot
Download Telegram
​​🚀Библиотека OpenCV :-֊ Установка, основные понятия, и сферы применения.🐍

- Что такое OpenCV?
OpenSource Библиотека компьютерного зрения и машинного обучения с открытым исходным кодом. В неё входят более 2500 алгоритмов, в которых есть как классические, так и современные алгоритмы для компьютерного зрения и машинного обучения. Эта библиотека имеет интерфейсы на различных языках, среди которых есть наш любимый Python.

- Установка OpenCV
Инструкцию по установке на Windows можно посмотреть здесь, а на Linuxздесь
.
- Для решении каких проблем была создана библиотека?

OpenCV позволяет достаточно быстро и эффективно реализовывать сложные алгоритмы
машинного зрения. Библиотека содержит более 500 функций, которые позволяют реализовывать приложения работающие во многих областях, в том числе:
- контроль качества выпускаемой продукции;
- обработке изображений в медицине;
- обеспечении безопасности;
- интерфейсе пользователя;
- робототехнике.

-----------------------------------
Исходный код примеров можете найти по ссылке ниже.
[ --code-- ]

Объяснение каждой строки в коде найдите здесь.
[ --explaining-- ]
​​⏱️Создание временных файлов и  каталогов🐍

⚠️Задача
Вам нужно создать временный файл или каталог, которые будут использоваться
во время выполнения вашей программы. После, возможно, вы захотите, чтобы
они были удалены.

Решение
В модуле tempfile есть различные функции, которые помогут решить эту задачу.
Чтобы создать безымянный временный файл, используйте tempfile.TemporaryFile:

from tempfile import TemporaryFile
with TemporaryFile('w+t') as f:
# Чтение/запись в файл
f.write('Hello World\n')
f.write('Testing\n')
# Перейти в начало и прочесть данные
f.seek(0)
data = f.read()
# Временный файл уничтожен
Также вы можете использовать файл таким образом:
f = TemporaryFile('w+t')
# Использовать временный файл
...
f.close()
# Файл уничтожен

Обсудить можно в нашем чате.

Объяснение кода по ссылке ниже
https://teletype.in/@tyom/DD1R_X2U5
​​📄Объединяем словари
с помощью функции update()📖.

Вы можете использовать функцию update() , чтобы скопировать ключи и значения
из одного словаря в другой.

Определим словарь pythons , содержащий имена юмористов:

>>> pythons = {
...'Chapman': 'Graham',
...'Cleese': 'John',
...'Gilliam': 'Terry',
...'Idle': 'Eric',
...'Jones': 'Terry',
...'Palin': 'Michael'}
>>> pythons
{'Chapman': 'Graham', 'Cleese': 'John', 'Gilliam': 'Terry',
'Idle': 'Eric', 'Jones': 'Terry', 'Palin': 'Michael'}
Кроме того, у нас есть еще один словарь — others , содержащий имена других
юмористов:
>>> others = { 'Marx': 'Groucho', 'Howard': 'Moe' }

Теперь появляется еще один программист, который решил, что члены второго словаря
others должны быть членами первого:
>>> pythons.update(others)
>>> pythons
{'Chapman': 'Graham', 'Cleese': 'John', 'Gilliam': 'Terry',
'Idle': 'Eric', 'Jones': 'Terry', 'Palin': 'Michael',
'Marx': 'Groucho', 'Howard': 'Moe'}

- А что произойдет, если во втором словаре будут находиться такие же ключи, что
и в первом?
- Победит значение из второго словаря:

>>> first = {'a': 1, 'b': 2}
>>> second = {'b': 'platypus'}
>>> first.update(second)
>>> first
{'a': 1, 'b': 'platypus'}
Программируете на Python или хотите начать? Тогда заходите в авторский телеграм-канал о Python!
В нём:

🔺 топ ошибок новичков,
🔺 лайфхаки и трюки,
🔺 красивый код,
🔺 разбор вопросов с собеседований.

Тем, кто хочет понимать, что пишет: @python_in_depth
Сделать пост в Инстаграм с помощю python написав 4 строчки кода
Перед запуском скрипта нужно убедиться, что на машине установлен модуль instabot,
в противном случае нужно её установить написав в терминале следующую команду.
pip install instabot


from instabot import bot
bot = Bot()
bot.login(username = "user_name", password = "user_password")
bot upload_photo("Post.jpg", caption = "Posted via Python Bot")

Обсудить пост и пообщатся можно в нашем чате.
​​ - "Я тебя по IP вычислю". 👶🏻

Думаю все наши подписчики так или иначе сталкивались с подобной ситуацией.

Мы заинтересовались этой темой, и как и было ожидаемо, знание python поможет бороться с такими индивидуумами реально вычислив их по IP.

Для этого нам понадобится модуль названный ip2geotools и еще модуль socket

;Установить их можно соответственно командами :
> pip install ip2geotools
> pip install socket

;Сам скрипт :

import socket
from ip2geotools.databases.noncommercial import DbIpCity

IP = input("Введите IP")
response = DbIpCity.get(IP,api_key = "free")
print ("IP : ", IP)
print ("City : ", response.city)
print ("Region:", response.region)
print ("Country:", response.country)


-------------------------------------------------
Обсудить пост и пообщаться можно в нашем чате.
Эхо Бот для телеграма на python
используемые модули logging . telegram

"""
Простой бот для ответа на сообщения Telegram.
Сначала определяется несколько функций-обработчиков. Затем эти функции передаются в
Диспетчер и зарегистрированы по месту.
Затем бот запускается и работает, пока мы не нажмем Ctrl-C в командной строке.
Использование:
Базовый пример Echobot, повторяет сообщения.
Нажмите Ctrl-C в командной строке или отправьте сигнал процессу, чтобы остановить
бот.
"""
__________________________________________
Код можете найти по этой ссылке.
A oбсудить пост и пообщаться можно в нашем чате
​​Как объединить видео и аудио файлы в ffmpeg-python
Вот код python после того, как у вас есть pip install ffmpeg-python в вашей среде:

import ffmpeg
input_video = ffmpeg.input('./test/test_video.webm')
input_audio = ffmpeg.input('./test/test_audio.webm')
ffmpeg.concat(input_video, input_audio, v=1, a=1).output('./processed_folder/finished_video.mp4').run()

После обработки ваш файл будет лежать в файле ./processed_folder/finished_video.mp4

v=1 : Установите количество выходных видеопотоков, то есть также количество видеопотоков в каждом сегменте. Значение по умолчанию-1.
a=1 : установите количество выходных аудиопотоков, то есть также количество аудиопотоков в каждом сегменте. Значение по умолчанию-0.
Для получения подробной информации о ffmpeg.concat , проверьте: https://ffmpeg.org/ffmpeg-filters.html#concat .
Вы можете проверить больше примеров здесь: https://github.com/kkroening/ffmpeg-python/issues/281
PS. Если вы используете MacOS и у вас есть ошибка: FileNotFoundError: [Errno 2] No such file or directory: 'ffmpeg' во время выполнения кода, просто brew install ffmpeg в вашем terminal.
💡Лайфхаки и памятки для питонистов!

👉Вывести в консоль 2 или более списков одновременно.
>>>list1 = [1, 3, 5, 7]
>>>list2 = [2, 4, 6, 8]
>>>for a, b in zip(list1, list2):
...print (a, b)
Output:
>>>1 2
>>>3 4
>>>5 6
>>>7 8

👉Превратить строку в список.
>>>formatted_list = list(map(int, input().split()))
>>>print (formatted_list)
Output:
>>>[1, 2, 3]

👉Превратить список списков в один список.
>>>import itertools
>>>list1 = [[1,2], [3,4], [5,6]]
>>>lst = list(itertools.chain.from_iterable(list1))
Output:
>>>[1, 2, 3, 4, 5, 6]

👉Раздробить список в группы.
>>>list1 = ['Sun', 'Flowers', 'Peoples', 'Animals', 'Day', 'Night']
>>>partition = list(zip(*[iter(list1)] * 2))
>>>print(partition)
Output:
>>>[('Sun', 'Flowers'), ('Peoples', 'Animals'), ('Day', 'Night')]
🐍 Как Python применяется в блокчейн
Почему популярный язык программирования используется для блокчейна? Какие готовые инструменты Python помогут реализовать собственный проект? Как пошагово создать распределенную базу данных? На эти вопросы мы постараемся ответить в статье.

Обсудить тему можно в нашем <чате>.🚀
✊🏻✌🏻🤚🏻Проект для новичков и не только - Камень ножницы бумага

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

https://telegra.ph/Kamen-nozhnicy-bumaga-03-24

обсудить проект и просто пообщаться можно в нашем чате.
13 лучших книг по Python для начинающих и продолжающих

- 7 лучших книг по Python для начинающих

Python Crash Course, Eric Matthes

Head-First Python, Paul Barry

Invent Your Own Computer Games with Python, Al Sweigart

Think Python: How to Think Like a Computer Scientist, Allen B. Downey

Effective Computation in Physics: Field Guide to Research with Python, Anthony Scopatz, Kathryn D. Huff

Learn Python 3 the Hard Way, Zed A. Shaw

Real Python Course, Real Python Team
==========================

- Подборка лучших книг по Python для среднего и продвинутого уровня

Python Tricks: A Buffet of Awesome Python Features, Dan Bader

Fluent Python: Clear, Concise, and Effective Programming, Luciano Ramalho

Effective Python: 59 Ways to Write Better Python, Brett Slatkin

Python Cookbook, David Beazley & Brian K. Jones


Описание кождой книги найдите в этой <статье>.
Обсудить книги и просто пообщаться можно в нашем <чате>.
🐍3 способа добавить элемент в список

Напоминаю, списки в Python – упорядоченные последовательности элементов различных типов данных. Списки можно изменять, например добавлять новые элементы.

1. list.append(x) – добавляет элемент, переданный в качестве аргумента, в конец списка. Этот метод является самым простым и распространённым в коде.

arr = [1, 2]
arr.append(3)
# [1, 2, 3]

2. list.insert(i, x) – вставляет элемент в переданную позицию. Первый аргумент означает индекс элемента, перед которым будет добавлено новое значения.

Таким образом, list.insert(0, x) вставит элемент в начало списка, а list.insert(len(list), x) эквивалентно записи list.append(x).

arr = [1, 2]
arr.insert(1, 3)
# [1, 3, 2]

3. list.extend(iterable) – расширяет список, добавляя все элементы другой коллекции.

arr = [1, 2]
arr2 = [3, 4]
arr.extend(arr2)
# [1, 2, 3, 4]

Тема должна быть достаточно легкая и знакомая многим, но повторенье – мать ученья.

P. S. Накидайте в комменты тем, которые разобрать в следующих постах
JSON в Python

Подробнее про JSON
Не удивительно, что JavaScript Object Notation был вдохновен подмножеством языка программирования JavaScript, связанным с синтаксисом объектного литерала. У них есть отличный сайт, в котором все прекрасно объясняется. В конечном счете, большая часть сообщества приняла JSON благодаря его простоте как для людей, так и для машин.
Смотрите, это JSON!
https://telegra.ph/Json--python-03-30
Всем привет)
Ну что, кроме первоапрельской шутки с закрытием Python, были сегодня у вас ещё смешные моменты?

Делимся в комментариях, отдохнём сегодня от контента😅
Switch-конструкция с помощью словаря

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

Однако есть одно хитрое решение — использовать словарь, где значениями будут функции. Например, напишем словарь, который будет использован для математических операторов.

switch = {
'+': lambda x, y: x + y,
'-': lambda x, y: x - y,
'*': lambda x, y: x * y,
'/': lambda x, y: x / y
}

В этом примере были использованы lambda-функции для простоты, но вместо них можете подставить любые другие. Для тех, кто не знает: lambda - объявление анонимной функции (можно косвенно сравнить с def); x, y - принимаемые аргументы; x + y - то, что функция возвращает.

result = switch['*'](4, 5)
print(result)
# Output: 20

Примерно вот так мы можем пользоваться подобной штукой. Думаю, что многие найдут полезное применение подобному использованию словарей.
​​Проекты на Python для новичков
«Виселица»
«Виселица» это более продвинутый вариант игры в угадайку. Пользователь должен угадывать буквы в загаданном слове. Может показаться, что это слишком сложно для первых проектов, но погодите. Самая базовая версия такой игры может быть просто текстовой и не требовать какой-то графики.
Для начала, вам нужен список слов, из которых система будет выбирать одно слово случайным образом. Для этого можно использовать, например, словарь Sowpods (файл можно скачать на GitHub). Дальше вам понадобится подходящая функция для проверки, ввел ли пользователь букву и есть ли такая буква в выбранном слове (а если есть, то сколько там таких букв). Также ваш код должен выводить на экран правильно угаданные буквы и ограничивать количество попыток при помощи счетчика (переменная типа integer).
Использование Python для Raspberry PI
Еще один отличный вариант для начинающих — использование Raspberry Pi. Этот маленький компьютер часто используется для обучения программированию. Raspberry Pi Foundation уделяет особое внимание тому, чтобы сделать программирование доступным для юношества. Этот микрокомпьютер маленький, довольно мощный (для своих задач) и недорогой: он может стоить от 5 до 50 долларов.


Используя Raspberry Pi, можно создавать сайты, приложения и даже углубиться в робототехнику. Если подсоединить к этой машине монитор, клавиатуру и мышь, он может работать, как обычный компьютер. Но, настроив его, вы можете управлять им удаленно — тут-то и начинается все самое интересное!
На Raspberry Pi Code Club можно найти небольшой учебный план по освоению основ Python. Есть там и несколько маленьких проектов, например, создание игры «Камень, ножницы, бумага» и программ-шифровальщиков. Освоив работу с Raspberry Pi, вы сможете использовать его для создания самых разных вещей, включая робот-будильник и камеры слежения для вашего дома.
Идеи проектов на Python для программистов среднего уровня
Доведя до конца несколько интересных проектов, вы почувствуете себя куда более сильным программистом. Что дальше? Можно браться за более сложные проекты. Как насчет следующих?
Веб-проекты
Не следует забывать, что в первую очередь Python это язык веб-разработки. Почему бы не создать несколько простых веб-проектов? Таким образом вы можете получить программы для личного пользования, а также приобрести навыки, которые вам пригодятся при поисках новой работы.
Python можно применять для извлечения информации с сайтов, что делает его весьма подходящим языком для создания агрегаторов контента. Хорошим примером такого проекта может послужить AllTop. Вы выбираете интересующую вас тему, а система подбирает вам соответствующие заголовки из самых популярных. Это действительно проект для уже опытного программиста, поскольку вам нужно будет хранить информацию в базе данных и использовать специфические библиотеки Python для HTTP-запросов и парсинга контента.

Еще одна идея — написание приложения для создания заметок. Такая программа позволяет пользователю что-то записывать, а позже возвращает записи. Сложная часть такого проекта — добавление личных аккаунтов. У каждого пользователя должны быть его личные заметки, доступ к которым должен быть только у него (причем доступ откуда угодно, это же веб-проект). Самый простой способ реализовать нечто подобное — использовать для создания приложения фреймворк Django.
Оператор pass делает абсолютно ничего, то есть совсем ничего. В ходе исполнения данного оператора ничего не происходит, поэтому он может использоваться в качестве некой заглушки в тех местах, где это синтаксически необходимо.

Например, вам надо сделать несколько функций, вы написали def'ы и названия, но сам код еще не успели, однако программу надо запустить и проверить что-то другое. Вот тут и понадобится pass.

def func():
pass

Ну или в конструкции try-except, чтобы просто проигнорировать и никак не обрабатывать ошибку в программе.

try:
any_function()
except:
pass

В общем, полезная штука, используйте.

🐍Накидайте ещё полезных лайфхаков в комментарии
​​Python: распознавание объектов в реальном времени
В этой статье мы будем разбирать код программы, в которой используется Deep Learning и OpenCV. Её суть: распознавание объектов в реальном времени.
Читать статью.
​​Распознавание текста с картинки. Python Tesseract ORC + OpenCV
Сегодня мы с вами поговорим на тему языка Python и рассмотрим пример создания крутого приложения. Наша программа будет способна считывать текст из любой фотографии.
Статья.