Python Community
13K subscribers
1.24K photos
31 videos
15 files
725 links
Python Community RU - СНГ сообщество Python-разработчиков

Чат канала: @python_community_chat

Сотрудничество: @cyberJohnny и @Sergey_bzd

РКН реестр:
https://knd.gov.ru/license?id=67847dd98e552d6b54a511ed&registryType=bloggersPermission
Download Telegram
⚡️ Задачка с собеседования | #Medium

Условие:

Вам надо написать функцию, которая переворачивает слова, длинна которых больше или равняется пяти. Будут только символы ASCII и пробел.

Примеры:

spin_words('to') -> 'to'
spin_words('Welcome') -> 'emocleW'
spin_words('Hi everyone') -> 'Hi enoyreve'
spin_words('This sentence is a sentence') -> 'This ecnetnes is a ecnetnes'

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Ответ на предыдущую задачу
⚡️ Массивы

Да, они тоже есть в Python, только хранятся в модуле array. Этот модуль предоставляет объект, который может компактно предоставляет массив значений: символы, целые числа, float.

В чём же их преимущество? Они хранят данные компактнее и, благодаря им, удобнее работать с числами.

Но, как и у всего, у них есть недостатки. Все объекты могут быть только одного типа, который задаётся при создании. Их вы можете посмотреть в документации.

#миниурок #array
Что выведет этот код?
Anonymous Quiz
5%
2
17%
3
28%
True
15%
False
25%
Ошибку
10%
Узнать ответ
⚡️ Узнаём скорость интернета

speestest-cli
— утилита, написанная на Python, которую можно использовать для измерения скорости интернета на основе сайта speedtest.net.

Установка: pip install speedtest-cli

Предполагается, что программа будет запускаться из терминала, поэтому вводим speedtest-cli и наблюдаем за выводом.

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

#миниурок #speedtest
⚡️ Задачка с собеседования | #Medium

Условие:

Вам надо написать функцию, которая принимает список из строк и число k. После она берёт k самых длинных строк и соединяет их последовательно.

Примеры:

longest_concate(['abc', 'a', 'bc'], 1) -> 'abc'
longest_concate(['abc', 'a', 'abc'], 4) -> 'abcabca'
longest_concate(['abc', 'a', 'def'], 2) -> 'abcdef'
longest_concate(['aa', 'bb', 'cc'], 2) -> 'aabb'

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Ответ на предыдущую задачу
⚡️Переводим текст в речь

gTTS
— модуль для взаимодействия с API преобразования текста в речь google translate.

Установка: pip install gTTS

Вы можете попробовать этот модуль, введя gtts-cli 'hello' --output hello.mp3 в терминал.

Но, помимо cli, модуль доступен и в python. Просто создаёте gTTS(text), сохраняете с помощью save('filename.mp3') и получаете тот же самый результат.

#миниурок #gTTS
⚡️ Генератор коротких ссылок

Если ваш проект загружает файлы в интернет, было бы классно ими поделиться. Длинные ссылки отправлять не совсем прилично, поэтому стоит воспользоваться pyshorteners.

Установка: pip install pyshorteners

Shortener()
— всё начинается с этого класса. Никаких аргументов он не принимает.

После — выбираете интересный вам сервис, который можете узнать из документации и передаём через short(link) ссылку.

Так скажем, добро пожаловать на https://clck.ru/Yfzua.

#миниурок #pyshorteners
⚡️ Задачка с собеседования | #Easy

Условие:

Вам необходимо создать функцию, угадывающую случайное число, которое будет после вызова функции random.randint(1, 6). Удачи ;)

Примеры:

print(get_future() == random.randint(1, 6)) -> True
print(get_future() == random.randint(1, 6)) -> True
print(get_future() == random.randint(1, 6)) -> True

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Ответ на предыдущую задачу
⚡️ Документируем код

Это — строка под определением объекта. Удобнее всего писать многострочную документацию. Она начинается с трёх кавычек и записывает всё, до следующих трёх кавычек.

Но этого знать недостаточно, поскольку у Python есть соглашение:

• Первая строка всегда должна быть кратким кратким описанием назначения объекта. Начинается с заглавной буквы, заканчивается точкой.

• Если в документации больше одной строки, вторая должна обязательно быть пустой.

• Следующие строки должны быть одним или несколькими абзацами, описывающими всё самое важное об объекте.

Ну а если вы хотите получить документацию из приложения, то возьмите его из __doc__.

#теория
⚡️ Работаем с текстом

TextBlob
— библиотека для Python для обработки естественного языка (ещё его называют NLP).

Установка: pip install textblob

Начинается всё с класса TextBlob(text), который занимается обработкой текста. Далее пойдёт речь о его атрибутах:

tags — возвращает список из тегов части речи.

words — возвращает слова, из которых состоит текст. А sentences — предложения.

Это очень полезное API для обучения ИИ. Если вам стало интересно, то обязательно посетите документацию.

#миниурок #textblob
⚡️ Задачка с собеседования | #Medium

Условие:

Вам необходимо написать функцию, которая форматирует имена как 'Mike, Jane & Lisa'. Все имена отделяются запятой, кроме двух последних.

Примеры:

namelist(['Mike', 'Jane', 'Lisa']) -> 'Mike, Jane & Lisa'
namelist(['Jane', 'Lisa']) -> 'Jane & Lisa'
namelist(['Mike']) -> 'Mike'
namelist([]) -> ''

📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇

#Задачка_с_собеседования
⚡️ Ответ на предыдущую задачу