Хочешь углубить знания в Python-разработке и увереннее пользоваться своими навыками? Пройди бесплатный интенсив по программированию 19–21 апреля в 21:00 по московскому времени!
Успей на бесплатную регистрацию: ▶️ https://clc.am/m6wd4w
💡 Изучишь основы Python и начнёшь разбираться в разных типах данных, структурах, функциях и ООП.
💡 Разработаешь сервер для прослушивания подключений.
💡 Поработаешь с библиотеками PyQT, Kivy, wxWidgets, Tkinter.
💡 На практических занятиях создашь программу для обмена быстрыми сообщениями.
☝️ 3 дня тебя будет обучать специалист с семилетним опытом в разработке на Python — Никита Левашов. Он поделится практическими советами, рекомендациями и ответит на все вопросы!
⭐️🎁 Сдай домашнее задание и получи сертификат на 15 000 рублей на любой курс от Skillbox.
Успей на бесплатную регистрацию: ▶️ https://clc.am/m6wd4w
💡 Изучишь основы Python и начнёшь разбираться в разных типах данных, структурах, функциях и ООП.
💡 Разработаешь сервер для прослушивания подключений.
💡 Поработаешь с библиотеками PyQT, Kivy, wxWidgets, Tkinter.
💡 На практических занятиях создашь программу для обмена быстрыми сообщениями.
☝️ 3 дня тебя будет обучать специалист с семилетним опытом в разработке на Python — Никита Левашов. Он поделится практическими советами, рекомендациями и ответит на все вопросы!
⭐️🎁 Сдай домашнее задание и получи сертификат на 15 000 рублей на любой курс от Skillbox.
Библиотека schedule
Гибкая библиотека для создания планировщика. Точнее с её помощью можно создавать задачи, которые будут выполняться с определенным интервалом. Промежуток настраивается как душе угодно и работает до выключения пользователем приложения.
Конечно можно было использовать стандартный таймер, но зачем изобретать велосипед? С данной библиотекой планировка задач станет намного проще и понятнее другим программистам.
Библиотеку необходимо установить:
Гибкая библиотека для создания планировщика. Точнее с её помощью можно создавать задачи, которые будут выполняться с определенным интервалом. Промежуток настраивается как душе угодно и работает до выключения пользователем приложения.
Конечно можно было использовать стандартный таймер, но зачем изобретать велосипед? С данной библиотекой планировка задач станет намного проще и понятнее другим программистам.
Библиотеку необходимо установить:
install scheduleВ примере используется seconds, но можно использовать minutes, hour, day.at("8:00"), monday, minute.at(":17"). Если добавлять at, то указываем во сколько именно произойдет событие. Подробнее в документации.
Совет на всю жизнь: научитесь инвестировать. Если бы вы вложились Apple, Tesla или биткоин несколько лет назад, то сейчас стали бы миллионерами.
Для этого не нужны миллионы или особые знания. Достаточно просто иметь несколько тысяч в загашнике и подписаться на знающих людей. Например, на канал Инвест Ревью.
Автор ежедневно мониторит закрытые источники, общается с друзьями-экспертами, а потом простым языком объясняет, куда вложить небольшую сумму, и чего точно не стоит делать на фондовом рынке.
В общем, подписывайтесь и изучайте, потом сами себе спасибо скажете: @investorbiz
Для этого не нужны миллионы или особые знания. Достаточно просто иметь несколько тысяч в загашнике и подписаться на знающих людей. Например, на канал Инвест Ревью.
Автор ежедневно мониторит закрытые источники, общается с друзьями-экспертами, а потом простым языком объясняет, куда вложить небольшую сумму, и чего точно не стоит делать на фондовом рынке.
В общем, подписывайтесь и изучайте, потом сами себе спасибо скажете: @investorbiz
Немного практики
Часто требуется удалить ненужные файлы. Вот пример программы, которая за вас определит размер каждой папки в каталоге и выведет название и размер в порядке возрастания. Для этого будем использовать только модуль os (про него уже рассказывали) и стандартные функции.
Ссылка на код
Часто требуется удалить ненужные файлы. Вот пример программы, которая за вас определит размер каждой папки в каталоге и выведет название и размер в порядке возрастания. Для этого будем использовать только модуль os (про него уже рассказывали) и стандартные функции.
Ссылка на код
Библиотека Flask
Помните мы говорили о декораторах? Flask реализован на них. На нем можно писать простые сайты и мощные сервисы. Единственный минус - отсутствие асинхронности, конечно, при желании можно добиться и ее, но встроенной, к сожалению, нет.
Как уже сказано, Flask очень обширная тема, рассказ об этом может занять несколько книг, поэтому если вам интересно веб программирование, то погружайтесь с головой.
С помощью декоратора app.route указываем за какой адрес страницы отвечает функция. То, что мы вернем через return будет показано пользователю. И да, внутри функции можно делать все, что угодно.
Помните мы говорили о декораторах? Flask реализован на них. На нем можно писать простые сайты и мощные сервисы. Единственный минус - отсутствие асинхронности, конечно, при желании можно добиться и ее, но встроенной, к сожалению, нет.
Как уже сказано, Flask очень обширная тема, рассказ об этом может занять несколько книг, поэтому если вам интересно веб программирование, то погружайтесь с головой.
С помощью декоратора app.route указываем за какой адрес страницы отвечает функция. То, что мы вернем через return будет показано пользователю. И да, внутри функции можно делать все, что угодно.
Как освоить Python с нуля?
Рассказываем, что изучать, где тренироваться и как действовать дальше.
В статье собрали полезные материалы и ресурсы, которые подходят для новичков и людей с минимальными знаниями.
Но и профессионалы найдут в нашем списке что-то новое.
Читать статью
Рассказываем, что изучать, где тренироваться и как действовать дальше.
В статье собрали полезные материалы и ресурсы, которые подходят для новичков и людей с минимальными знаниями.
Но и профессионалы найдут в нашем списке что-то новое.
Читать статью
Библиотека Progressbar
Думали ли вы когда-нибудь над полоской прогресса? Иногда бывает полезно добавить в код отображение прогресса, чтобы пользователь не беспокоился, что программа не отвечает.
В первую очередь это касается синхронных приложений. Ведь, если наш код выполняет что-то одно, то на другие действия он не будет реагировать, ставя их в очередь. Ну и еще один вариант показывать, что программа не виснет, а думает, при этом не обязательно показывать прогресс.
Все это очень интересно, но если мы начнем самостоятельно писать полосу прогресса, то отвлечемся от основного кода. К счастью, в python есть библиотека Progressbar, которая делает все за нас.
Думали ли вы когда-нибудь над полоской прогресса? Иногда бывает полезно добавить в код отображение прогресса, чтобы пользователь не беспокоился, что программа не отвечает.
В первую очередь это касается синхронных приложений. Ведь, если наш код выполняет что-то одно, то на другие действия он не будет реагировать, ставя их в очередь. Ну и еще один вариант показывать, что программа не виснет, а думает, при этом не обязательно показывать прогресс.
Все это очень интересно, но если мы начнем самостоятельно писать полосу прогресса, то отвлечемся от основного кода. К счастью, в python есть библиотека Progressbar, которая делает все за нас.
Научились программировать python и начали зарабатывать деньги, но накопления "сжирает" инфляция? Тогда насталл время научиться инвестировать.
Тинькофф Банк проводит акцию, в которой дарит подарки новичкам за обучение инвестициям.
Что нужно делать, чтобы получить подарок?
Нужно зарегистрироваться и пройти обучение из 10 уроков. После урока Вам будет предлагаться пройти тест, где вы сможете выиграть подарочные акции на сумму до 25 000₽.
После прохождения курса, вы поймёте основные термины и понятия в инвестициях, что повысит вашу финансовую грамотность. Робот - советник поможет вам выбрать акции, облигации и другие финансовые инструменты.
В приложении есть соц. сеть " Пульс", созданная специально для общения инвесторов, что создаёт уникальное комьюнити, поэтому скорее переходите по ссылке и скачивайте Тинькофф Инвестиции: https://ntv.prfl.me/pythonaa/f4c4df6c
Тинькофф Банк проводит акцию, в которой дарит подарки новичкам за обучение инвестициям.
Что нужно делать, чтобы получить подарок?
Нужно зарегистрироваться и пройти обучение из 10 уроков. После урока Вам будет предлагаться пройти тест, где вы сможете выиграть подарочные акции на сумму до 25 000₽.
После прохождения курса, вы поймёте основные термины и понятия в инвестициях, что повысит вашу финансовую грамотность. Робот - советник поможет вам выбрать акции, облигации и другие финансовые инструменты.
В приложении есть соц. сеть " Пульс", созданная специально для общения инвесторов, что создаёт уникальное комьюнити, поэтому скорее переходите по ссылке и скачивайте Тинькофф Инвестиции: https://ntv.prfl.me/pythonaa/f4c4df6c
Библиотека Emoji
Смайлы стали неотъемлемой частью нашей жизни. И сейчас трудно представить сообщения без них. Поэтому существует библиотека, которая позволяет удобно использовать эмоджи.
С её помощью можно не только вставлять смайлы, но и находить их в тексте.
Можно комбинировать с другими библиотеками, данный модуль подойдет как для простого вывода, так и для украшения текста в ботах ВК или ТГ. Можно использовать и на сайтах. emoji.emojize('Python is :name_smile:') чтобы получить нужный текст.
Ну а на картинке представим не работу библиотеки (она и так понятна), а интересный код, где вместо переменных используются эмоджи. Так делать нельзя, но код работает.
Смайлы стали неотъемлемой частью нашей жизни. И сейчас трудно представить сообщения без них. Поэтому существует библиотека, которая позволяет удобно использовать эмоджи.
С её помощью можно не только вставлять смайлы, но и находить их в тексте.
Можно комбинировать с другими библиотеками, данный модуль подойдет как для простого вывода, так и для украшения текста в ботах ВК или ТГ. Можно использовать и на сайтах. emoji.emojize('Python is :name_smile:') чтобы получить нужный текст.
Ну а на картинке представим не работу библиотеки (она и так понятна), а интересный код, где вместо переменных используются эмоджи. Так делать нельзя, но код работает.
infinity
Самая типичная проблема при написании некоторых сортировок — назначение самой большой переменной. Часто она решается простым вводом большого числа или возведением в степень. Это, конечно, не стареющая классика, но метод максимально не надежный, а главное есть более удачные способы
Не работает с int, требуется использовать именно float.
Самая типичная проблема при написании некоторых сортировок — назначение самой большой переменной. Часто она решается простым вводом большого числа или возведением в степень. Это, конечно, не стареющая классика, но метод максимально не надежный, а главное есть более удачные способы
float('infinity')
или float('inf')
для получения максимально возможного числаfloat('-infinity')
или float('-inf')
для получения минимально возможного числа.Не работает с int, требуется использовать именно float.
hex, oct, bin
Приходилось вам раньше работать с различными системами счисления? Если да, то вы знаете, как написать программу переводящую из одной системы в другую. Пишется она довольно просто, но иногда стоит задача быстро написать код с какой-то популярной системой счисления. Обычно это двоичная, восьмеричная или шестнадцатеричная. Для всех этих систем есть встроенные функции, которые переводят в нужную нам систему!
Из 10-ричной:
hex - перевод в 16-ричную систему
oct - перевод в 8-ричную систему
bin - перевод в 2-ичную систему
А из любой системы счисления можно получить число максимально простым способом:
Приходилось вам раньше работать с различными системами счисления? Если да, то вы знаете, как написать программу переводящую из одной системы в другую. Пишется она довольно просто, но иногда стоит задача быстро написать код с какой-то популярной системой счисления. Обычно это двоичная, восьмеричная или шестнадцатеричная. Для всех этих систем есть встроенные функции, которые переводят в нужную нам систему!
Из 10-ричной:
hex - перевод в 16-ричную систему
oct - перевод в 8-ричную систему
bin - перевод в 2-ичную систему
А из любой системы счисления можно получить число максимально простым способом:
int(number, base)
This media is not supported in your browser
VIEW IN TELEGRAM
Dribbble теперь в Telegram!
Самое крупное в мире дизайнерское сообщество зарегистрировалось в Телеграм. Теперь каждый день на этом канале будут публиковаться лучшие работы для вдохновления, иногда уроки, фрибишные исходники и инструменты.
Подписывайся: @Dribbble
Самое крупное в мире дизайнерское сообщество зарегистрировалось в Телеграм. Теперь каждый день на этом канале будут публиковаться лучшие работы для вдохновления, иногда уроки, фрибишные исходники и инструменты.
Подписывайся: @Dribbble
Библиотека Flask
В прошлом посте разобрали о чем эта библиотека вообще. Рассмотрим подробнее.
Как вы уже догадались контент можно вставлять переменными. Достаточно воспользоваться форматированием строк (
В прошлом посте разобрали о чем эта библиотека вообще. Рассмотрим подробнее.
Как вы уже догадались контент можно вставлять переменными. Достаточно воспользоваться форматированием строк (
f"a + 1={a + 1}"
). Но тогда код получится слишком огромным. Вы можете составить шаблон прямо в html коде и сохранить его как отдельную страницу. А затем при выдаче он будет просто выполнен. К примеру в файле 'index.html'
будет лежать такой код: '<h1>{{name}}</h1><p>{{content}</p>'
В flask шаблонах используем {{}} вместо {} для вставки переменных. Доступны циклы и условия, но они добавляются по-другому. Об этом позже. И для выполнения года надо рендерить страницу.Регулярные выражения
Очень мощный, но самый загадочный инструмент разработчика. С одной стороны, им можно распарсить все что угодно, проверить на соответствие шаблону и многое другое в таком духе. И вот вы идете писать регулярки и понимаете, что выглядит это все очень некрасиво, но не это главная проблема.
Другие разработчики, скорее всего не поймут ваши регулярки, да и вы спустя время тоже. Их относительно не сложно писать, но тяжело понимать.
Стоит обратить внимание, что не стоит перезагружать регулярки. Они достаточно прожорливы и в большинстве случаев мы сами придумываем дополнительные проблемы. К примеру для проверки мэйла достаточно данного выражения r'\S+@\S+\.\S+' (\S+ - все не пробельные символы от 1 и более).
Самая полная регулярка для решения данной задачи написана в 5558 символов, которые никто не разберет. Лучше все же использовать простой шаблон и дополнительно проверять попыткой отправить письмо.
Очень мощный, но самый загадочный инструмент разработчика. С одной стороны, им можно распарсить все что угодно, проверить на соответствие шаблону и многое другое в таком духе. И вот вы идете писать регулярки и понимаете, что выглядит это все очень некрасиво, но не это главная проблема.
Другие разработчики, скорее всего не поймут ваши регулярки, да и вы спустя время тоже. Их относительно не сложно писать, но тяжело понимать.
Стоит обратить внимание, что не стоит перезагружать регулярки. Они достаточно прожорливы и в большинстве случаев мы сами придумываем дополнительные проблемы. К примеру для проверки мэйла достаточно данного выражения r'\S+@\S+\.\S+' (\S+ - все не пробельные символы от 1 и более).
Самая полная регулярка для решения данной задачи написана в 5558 символов, которые никто не разберет. Лучше все же использовать простой шаблон и дополнительно проверять попыткой отправить письмо.
Хочешь углубить знания в Python-разработке и увереннее пользоваться своими навыками? Пройди бесплатный интенсив по программированию 6–8 мая в 21:00 по московскому времени!
Успей на бесплатную регистрацию: ▶️ https://clc.am/nush9Q
📍 Изучишь основы Python и начнёшь разбираться в разных типах данных, структурах, функциях и ООП.
📍 Разработаешь сервер для прослушивания подключений.
📍 Поработаешь с библиотеками PyQT, Kivy, wxWidgets, Tkinter.
📍 На практических занятиях создашь программу для обмена быстрыми сообщениями.
☝️ 3 дня тебя будет обучать специалист с семилетним опытом в разработке на Python — Никита Левашов. Он поделится практическими советами, рекомендациями и ответит на все вопросы!
⭐️ 🎁 Сдай домашнее задание и получи сертификат на 15 000 рублей на любой курс от Skillbox.
Успей на бесплатную регистрацию: ▶️ https://clc.am/nush9Q
📍 Изучишь основы Python и начнёшь разбираться в разных типах данных, структурах, функциях и ООП.
📍 Разработаешь сервер для прослушивания подключений.
📍 Поработаешь с библиотеками PyQT, Kivy, wxWidgets, Tkinter.
📍 На практических занятиях создашь программу для обмена быстрыми сообщениями.
☝️ 3 дня тебя будет обучать специалист с семилетним опытом в разработке на Python — Никита Левашов. Он поделится практическими советами, рекомендациями и ответит на все вопросы!
⭐️ 🎁 Сдай домашнее задание и получи сертификат на 15 000 рублей на любой курс от Skillbox.
Регулярные выражения
Расскажу про еще одну функцию, которая лично мне очень нравится и помогает распарсить текст по шаблону. Метод про который я говорю - match.
Рекомендую использовать его в тех случаях, когда вы точно знаете, где нужный вам текст. Чаще всего это текст, написанный вашей же программой. К примеру, в телеграме это может быть работа собственными сообщениями в связке с инлайн кнопками.
В других случаях, кроме принятия шаблона от пользователя или другой программы, использование может быть лишним. Чаще всего данные быстрее получить через БД, предварительно сохранив их.
Расскажу про еще одну функцию, которая лично мне очень нравится и помогает распарсить текст по шаблону. Метод про который я говорю - match.
Рекомендую использовать его в тех случаях, когда вы точно знаете, где нужный вам текст. Чаще всего это текст, написанный вашей же программой. К примеру, в телеграме это может быть работа собственными сообщениями в связке с инлайн кнопками.
В других случаях, кроме принятия шаблона от пользователя или другой программы, использование может быть лишним. Чаще всего данные быстрее получить через БД, предварительно сохранив их.
Как заработать в 2021 году много
Просто следите за трендами. Рост тик-тока, модные Telegram-каналы или даже пресловутый биткойн — всё это тренды, на которых можно было обогатиться. Пригодится всем сопричастным — маркетологам, smmшникам, фрилансерам, предпринимателям.
Самому искать тренды — сложно и долго, поэтому читайте людей, которые делают это за вас. Например, канал Маркетология.
Автор ежедневно мониторит 90+ сайтов, общается с экспертами, ходит на закрытые тусовки, а потом рассказывает на канале про самое годное и полезное.
Короче, подписывайтесь и изучайте, потом сами себе спасибо скажете: @marketology24
Просто следите за трендами. Рост тик-тока, модные Telegram-каналы или даже пресловутый биткойн — всё это тренды, на которых можно было обогатиться. Пригодится всем сопричастным — маркетологам, smmшникам, фрилансерам, предпринимателям.
Самому искать тренды — сложно и долго, поэтому читайте людей, которые делают это за вас. Например, канал Маркетология.
Автор ежедневно мониторит 90+ сайтов, общается с экспертами, ходит на закрытые тусовки, а потом рассказывает на канале про самое годное и полезное.
Короче, подписывайтесь и изучайте, потом сами себе спасибо скажете: @marketology24
Регулярные выражения
Раз мы уже начали говорить про регулярные выражения, то я не могу обойти стороной sub. Данный метод позволяет заменить в строке по шаблону на нужный нам текст.
repl - на что заменяем
string - строка по которой ищем
max - сколько раз заменяем
Соответственно, этот метод возвращает нужную нам строку.
Раз мы уже начали говорить про регулярные выражения, то я не могу обойти стороной sub. Данный метод позволяет заменить в строке по шаблону на нужный нам текст.
repl, string, max=0)pattern - шаблон
repl - на что заменяем
string - строка по которой ищем
max - сколько раз заменяем
Соответственно, этот метод возвращает нужную нам строку.
Регулярные выражения
Вы уже поняли, что при работе со строками модель re просто необходим. Отлаживать их очень тяжело, но все же необходимо.
В python для этого есть встроенная возможность, вы можете указать как флаг re.DEBUG. По названию видно, что данный flag помогает дебажить регулярные выражения.
Возможно кому-то данный способ может показаться неудобным. Я так же советую к использованию сайт regex101.com. В нем можно сразу создавать и проверять регулярные выражения, что очень удобно.
Вы уже поняли, что при работе со строками модель re просто необходим. Отлаживать их очень тяжело, но все же необходимо.
В python для этого есть встроенная возможность, вы можете указать как флаг re.DEBUG. По названию видно, что данный flag помогает дебажить регулярные выражения.
Возможно кому-то данный способ может показаться неудобным. Я так же советую к использованию сайт regex101.com. В нем можно сразу создавать и проверять регулярные выражения, что очень удобно.
Библиотека Flask
Если вы работали с запросами, к примеру на библиотеке request, то знаете, что существуют несколько видов запросов.
К примеру, в браузере при получении страницы это метод GET. Когда вы отправляете пароль и логин серверу (или другие данные) - POST. Кроме этого существуют запросы сугубо для программ, а не для браузера.
Какие есть методы?
Основных 4:
GET — получение ресурса
POST — отправить данные
PUT — обновление данных
DELETE — удаление данных
Flask позволяет обрабатывать данные запросы посредством добавления аргумента methods в декоратор.
Если вы работали с запросами, к примеру на библиотеке request, то знаете, что существуют несколько видов запросов.
К примеру, в браузере при получении страницы это метод GET. Когда вы отправляете пароль и логин серверу (или другие данные) - POST. Кроме этого существуют запросы сугубо для программ, а не для браузера.
Какие есть методы?
Основных 4:
GET — получение ресурса
POST — отправить данные
PUT — обновление данных
DELETE — удаление данных
Flask позволяет обрабатывать данные запросы посредством добавления аргумента methods в декоратор.
Библиотека subprocess
Данная библиотека как ни странно, помогает работать с процессами. С ней можно, к примеру, вызвать какое-то приложение. Пусть это будет командная строка.
Кроме этого, можно проверить ответ от какого-то сайта. Делается это через расчет ping.
Про еще большее количество возможностей расскажем в следующем посте.
Данная библиотека как ни странно, помогает работать с процессами. С ней можно, к примеру, вызвать какое-то приложение. Пусть это будет командная строка.
Кроме этого, можно проверить ответ от какого-то сайта. Делается это через расчет ping.
Про еще большее количество возможностей расскажем в следующем посте.