Статья рекомендуется всем тем, кто проводит много времени сидя на компьютером, да и не только, потому что поддерживать своё состояние необходимо всем
Здоровье программиста
Здоровье программиста
Telegraph
Здоровье программиста
Думаю, абсолютно все программисты и не только сталкиваются с проблемами, связанными со здоровьем, в связи с работой перед монитором. В этой статье мы разберем самые частые ошибки и приведем рекомендации, как поддерживать своё здоровье даже с сидячим образом…
Программирование на Python: особенности обучения, перспективы, ситуация на рынке труда
Python — высокоуровневый язык программирования общего назначения. Относится к интерпретируемым языкам. То есть написанный на Python код интерпретируется в момент обращения программой-интерпретатором без предварительной компиляции.
И про этот прекрасный язык подробно раассказываеться в этой статье
Python — высокоуровневый язык программирования общего назначения. Относится к интерпретируемым языкам. То есть написанный на Python код интерпретируется в момент обращения программой-интерпретатором без предварительной компиляции.
И про этот прекрасный язык подробно раассказываеться в этой статье
Алгоритм Дейкстры лежит в основе многих востребованных современных сервисов, к числу которых относятся GPS навигация и маршрутизация состояния канала сетевого уровня. Используя некоторые базовые структуры данных, мы разберемся, что именно он делает, каким образом достигает цель и как реализовать алгоритм в Python.
Что делает алгоритм Дейкстры
Алгоритм Дейкстры находит кратчайший путь между двумя вершинами графа. Следовательно, если математические задачи моделируется при помощи графа, используя алгоритм Дейкстры, можно найти кратчайший путь между вершинами.
Реализация на нашем любимом питоне в и разложенный до мелочей объяснение алгоритма статье, а пообщаться и обсудить пост можно в нашем чате.
Что делает алгоритм Дейкстры
Алгоритм Дейкстры находит кратчайший путь между двумя вершинами графа. Следовательно, если математические задачи моделируется при помощи графа, используя алгоритм Дейкстры, можно найти кратчайший путь между вершинами.
Реализация на нашем любимом питоне в и разложенный до мелочей объяснение алгоритма статье, а пообщаться и обсудить пост можно в нашем чате.
Мы уже рассмотрели алгоритм Дейкстры, но оина не является самым оптимальным алгоритмом.
И так...
Реализация алгоритма A*
Поиск по графам — это семейство схожих алгоритмов. Существует множество вариаций алгоритов и их реализаций. Относитесь к коду этой статьи как к отправной точке, а не окончательной версии алгоритма, подходящей ко всем ситуациям.
Статья с разбором.
Oбсудить пост можно в нашем чате.
И так...
Реализация алгоритма A*
Поиск по графам — это семейство схожих алгоритмов. Существует множество вариаций алгоритов и их реализаций. Относитесь к коду этой статьи как к отправной точке, а не окончательной версии алгоритма, подходящей ко всем ситуациям.
Статья с разбором.
Oбсудить пост можно в нашем чате.
Мотивационный пост или Крутые проекты сделанны с нуля на python.
Canto − RSS-демон и Canto Curses клиент
Deluge − популярный, легкий, кросс-платформенный клиент BitTorrent
gPodder − простой медиа-агрегатор и проигрыватель подкастов
Pi-Hole − приложение для блокировки интернет-трекинга
Planet − агрегатор каналов RSS и Atom, предназначенный для сбора сообщений из блогов и отображения их на одной странице
Qute Browser − vim-looked бразуер на PyQt5
Tribler − конфиденциальный клиент BitTorrent с поддержкой P2P-контента
Canto − RSS-демон и Canto Curses клиент
Deluge − популярный, легкий, кросс-платформенный клиент BitTorrent
gPodder − простой медиа-агрегатор и проигрыватель подкастов
Pi-Hole − приложение для блокировки интернет-трекинга
Planet − агрегатор каналов RSS и Atom, предназначенный для сбора сообщений из блогов и отображения их на одной странице
Qute Browser − vim-looked бразуер на PyQt5
Tribler − конфиденциальный клиент BitTorrent с поддержкой P2P-контента
Алгебраические типы данных и Python
Возможно, кто-то из читателей, увидев заголовок этой статьи, подумает что-нибудь вроде:
"Что?! Алгебраические типы данных?! Это же что-то из мира функциональных языков программирования. Python?! Ну нет... Где Python со своей динамической утиной типизацией, а где типы данных, и уж тем более алгебраические..."
[ Статья ]
Возможно, кто-то из читателей, увидев заголовок этой статьи, подумает что-нибудь вроде:
"Что?! Алгебраические типы данных?! Это же что-то из мира функциональных языков программирования. Python?! Ну нет... Где Python со своей динамической утиной типизацией, а где типы данных, и уж тем более алгебраические..."
[ Статья ]
Telegraph
Алгебраические типы данных и Python
Что-то в таком духе. Но, на самом деле, в Python есть своя система типов, кроме того Python считается языком со строгой типизацией, а благодаря mypy и аннотациям, корректность используемых типов может быть проверена статически без непосредственного запуска…
Как принимать платежи в Telegram | API Yoomoney Python
[ Статья ]
--------
Обсудить пост или просто пообщаться можем в нашем чате.
[ Статья ]
--------
Обсудить пост или просто пообщаться можем в нашем чате.
Telegraph
Как принимать платежи в Telegram | API Yoomoney Python
В данном посте мы научимся принимать платежи в Telegram боте с помощью API Yoomoney. Введение Начну с того, что я не так давно хотел создать магазин электронных товаров в Telegram. И столкнулся с проблемой, что на момент работы не было готовых решений. Хотелось…
Python2 vs Python3: различия синтаксиса
[ Статья ]
--------
Обсудить проект или просто пообщаться можем в нашем чате.
[ Статья ]
--------
Обсудить проект или просто пообщаться можем в нашем чате.
Telegraph
Python2 vs Python3: различия синтаксиса
Print - функция Оператор print был заменён функцией print(), с именованными аргументами для замены большей части синтаксиса старого оператора print. Примеры: Python2: print "The answer is", 2*2 Python3: print("The answer is", 2*2) Python2: print x, # Запятая…
Всё о работе с cookie в Python — класс http.cookies
Модуль
Статья
#cookies #web
Модуль
http.cookies
реализует парсер для cookie, по большей части совместимый с RFC 2109 — документом со стандартами работы с cookie и смежными вещами.Статья
#cookies #web
Telegraph
Всё о работе с cookie в Python — класс http.cookies
Стоит отметить, что реализация чуть менее строгая, чем стандарт, так как Microsoft Internet Explorer 3.0x, а позже современные браузеры облегчили правила для работы с cookie. Создание и установка значения Cookie Cookie используются как инструмент для поддержания…
Объединяя C++ и Python. Тонкости Boost.Python.
Симбиоз Python и C++ активно используется для реализаций чатботов, эта смесь быстроты и динамичности создаёт по настоячщему комфортные условия для разработчиков и юзеров.
Как их интегрировать в один проект читайте в статье.
[ Статья ]
Oбсудить пост и просто пообщаться можно в нашем чате.
Симбиоз Python и C++ активно используется для реализаций чатботов, эта смесь быстроты и динамичности создаёт по настоячщему комфортные условия для разработчиков и юзеров.
Как их интегрировать в один проект читайте в статье.
[ Статья ]
Oбсудить пост и просто пообщаться можно в нашем чате.
Telegraph
Объединяя C++ и Python. Тонкости Boost.Python
Boost.Python во всех отношениях замечательная библиотека, выполняющая своё предназначение на 5+, хотите ли вы сделать модуль на С++ для Python либо хотите построить скриптовую обвязку на Python для нативного приложения написанного на С++. Самое сложное в…
✊🏻✌🏻🤚🏻Проект для новичков и не только - Камень ножницы бумага
Ваша первая игра в Python: камень, ножницы, бумага.
Я предполагаю, что вы изучаете Python, потому что хотите писать интерактивные программы, например видеоигры. Что ж, сегодня твой счастливый день. Вы собираетесь запрограммировать свою первую игру на Python.
https://telegra.ph/Kamen-nozhnicy-bumaga-03-24
обсудить проект и просто пообщаться можно в нашем чате.
Ваша первая игра в Python: камень, ножницы, бумага.
Я предполагаю, что вы изучаете Python, потому что хотите писать интерактивные программы, например видеоигры. Что ж, сегодня твой счастливый день. Вы собираетесь запрограммировать свою первую игру на Python.
https://telegra.ph/Kamen-nozhnicy-bumaga-03-24
обсудить проект и просто пообщаться можно в нашем чате.
Telegraph
Камень ножницы бумага
Ваша первая игра в Python: камень, ножницы, бумага Откройте IDLE и создайте новый файл rps.py. Затем введите следующее: from random import randint #create a list of play options t = ["Rock", "Paper", "Scissors"] #assign a random play to the computer computer…
📄Модули🐍
Программы на Python содержат тысячи, десятки тысяч и сотни тысяч строк кода (есть проекты с миллионами). В таких условиях одним файлом с кодом не обойдёшься — его нужно разбивать на части. Для получения доступа к коду, который находится в других файлах, в Python реализован механизм модулей.
Модули и импортирование
Итак, файл с кодом на Python называется модулем. Имя модуля соответствует имени файла, поэтому файлы в Python принято называть в стиле "snakecase" (отметьте иронию: Python — питон — змея — snake — snakecase). Одни модули могут использовать содержимое других, если импортируют эти другие модули с помощью инструкции
Строго говоря, в Python импортировать модули можно несколькими способами:
импортировать сам модуль
импортировать отдельные определения из модуля
импортировать всё содержимое модуля сразу
Импортирование модуля
Рассмотрим применение первого способа — импортирование модуля целиком. Главное удобство упоминания модуля по имени: глядя на код, мы сразу видим, что используемая переменная или вызываемая функция — это часть конкретного модуля.
Синтаксис импорта:
Всё просто: после ключевого слова
В модуле (файле) с именем greeting.py определим функцию
# file: greeting.py
def
А в модуле с именем main.py сделаем импорт содержимого модуля greeting.py:
# file: main.py
import
print
Импортирование модуля в таком виде делает модуль доступным по имени — в данном случае это
Импортирование отдельных определений
Синтаксис импорта:
Иногда из всего модуля нужна пара функций или переменных, а имя модуля слишком длинное, чтобы писать его каждый раз. Здесь нам может пригодиться следующий вариант использования инструкции
# file: main.py
from
print
Здесь после ключевого слова
В следующем уроке мы рассмотрим третий вариант импортирования модуля ("импорт всего содержимого") и в целом немного углубим наши познания в этой теме.
Программы на Python содержат тысячи, десятки тысяч и сотни тысяч строк кода (есть проекты с миллионами). В таких условиях одним файлом с кодом не обойдёшься — его нужно разбивать на части. Для получения доступа к коду, который находится в других файлах, в Python реализован механизм модулей.
Модули и импортирование
Итак, файл с кодом на Python называется модулем. Имя модуля соответствует имени файла, поэтому файлы в Python принято называть в стиле "snakecase" (отметьте иронию: Python — питон — змея — snake — snakecase). Одни модули могут использовать содержимое других, если импортируют эти другие модули с помощью инструкции
import
.Строго говоря, в Python импортировать модули можно несколькими способами:
импортировать сам модуль
импортировать отдельные определения из модуля
импортировать всё содержимое модуля сразу
Импортирование модуля
Рассмотрим применение первого способа — импортирование модуля целиком. Главное удобство упоминания модуля по имени: глядя на код, мы сразу видим, что используемая переменная или вызываемая функция — это часть конкретного модуля.
Синтаксис импорта:
import <имя_модуля (без суффикса ".py")>
Всё просто: после ключевого слова
import
указываем имя модуля (файла). Но при этом суффикс .py
в имени надо опустить. То есть, к примеру, для модуля с именем my_module.py
в инструкции импорта достаточно прописать my_module
, а полный вид инструкции будет таким: import my_module
.В модуле (файле) с именем greeting.py определим функцию
say_hi
и переменную name
:# file: greeting.py
def
say_hi():
print('Hi!')
name
= 'Bob'
А в модуле с именем main.py сделаем импорт содержимого модуля greeting.py:
# file: main.py
import
greeting
# заметьте, расширение ".py" не указывается!(greeting.name)
# => Bobgreeting.say_hi()
# => Hi!Импортирование модуля в таком виде делает модуль доступным по имени — в данном случае это
greeting
. К содержимому же модуля можно обратиться, как говорят, "через точку". Причём можно как получать доступ к переменным (greeting.name
), так и вызывать функции модуля (greeting.say_hi()
).Импортирование отдельных определений
Синтаксис импорта:
from <имя_модуля (без суффикса ".py")> import <список определений>
.Иногда из всего модуля нужна пара функций или переменных, а имя модуля слишком длинное, чтобы писать его каждый раз. Здесь нам может пригодиться следующий вариант использования инструкции
import
:# file: main.py
from
greeting
import say_hi, name
(name)
# используем переменнуюsay_hi()
# вызываем функциюЗдесь после ключевого слова
from
указано имя модуля, а затем после ключевого слова import
— имена определений из этого модуля, которые мы в дальнейшем хотим использовать напрямую (а не "через точку").В следующем уроке мы рассмотрим третий вариант импортирования модуля ("импорт всего содержимого") и в целом немного углубим наши познания в этой теме.
📄Топ проектов которые украсят и добавят ценности в ваше портфолио python-разработчика.🚀
1. Aгрегатор контента - Агрегатор контента - это физическое лицо или организация, которые собирают веб-контент (и / или иногда приложения) из различных онлайн-источников для повторного использования или перепродажи. Есть два типа агрегаторов контента: (1) те, которые просто собирают материалы из различных источников для своих веб-сайтов, и (2) те, которые собирают и распространяют контент в соответствии с потребностями своих клиентов.
2. Сокращатель URL - Сокращение URL-адресов - это метод во всемирной паутине, в котором унифицированный указатель ресурса (URL) может быть существенно короче и по-прежнему направлен на требуемую страницу. Это достигается с помощью перенаправления, которое ведет на веб-страницу с длинным URL-адресом.
3. Решатель Судоку - Стандартный судоку содержит 81 ячейку в сетке 9 × 9 и 9 прямоугольников, каждое из которых является пересечением первых, средних или последних 3 строк, а также первых, средних или последних 3 столбцов.
Существует несколько компьютерных алгоритмов, которые решают большинство головоломок 9 × 9 (n = 9) за доли секунды, но комбинаторный взрыв происходит при увеличении n, ограничивая свойства судоку, которые можно построить, проанализировать и решить как n увеличивается.
4. Приложение для уведомлений на рабочем столе - Уведомление на рабочем столе - это простое приложение, которое выдает уведомление в форме всплывающего сообщения на рабочем столе.
5. Файловый менеджер - компьютерная программа, предоставляющая интерфейс пользователя для работы с файловой системой и файлами. Файловый менеджер позволяет выполнять наиболее частые операции удаления над файлами - создание, открытие / воспроизведение / просмотр, редактирование, изменение, переименование, копирование, изменение атрибутов и свойств, файлов и назначение прав.
⚠️Именно проекты таких типов работодатели ценят в портфолио разработчиков, а наличие этих проектов в списке реализованных, даст вам весомые преимущества перед другими кандидатами.
1. Aгрегатор контента - Агрегатор контента - это физическое лицо или организация, которые собирают веб-контент (и / или иногда приложения) из различных онлайн-источников для повторного использования или перепродажи. Есть два типа агрегаторов контента: (1) те, которые просто собирают материалы из различных источников для своих веб-сайтов, и (2) те, которые собирают и распространяют контент в соответствии с потребностями своих клиентов.
2. Сокращатель URL - Сокращение URL-адресов - это метод во всемирной паутине, в котором унифицированный указатель ресурса (URL) может быть существенно короче и по-прежнему направлен на требуемую страницу. Это достигается с помощью перенаправления, которое ведет на веб-страницу с длинным URL-адресом.
3. Решатель Судоку - Стандартный судоку содержит 81 ячейку в сетке 9 × 9 и 9 прямоугольников, каждое из которых является пересечением первых, средних или последних 3 строк, а также первых, средних или последних 3 столбцов.
Существует несколько компьютерных алгоритмов, которые решают большинство головоломок 9 × 9 (n = 9) за доли секунды, но комбинаторный взрыв происходит при увеличении n, ограничивая свойства судоку, которые можно построить, проанализировать и решить как n увеличивается.
4. Приложение для уведомлений на рабочем столе - Уведомление на рабочем столе - это простое приложение, которое выдает уведомление в форме всплывающего сообщения на рабочем столе.
5. Файловый менеджер - компьютерная программа, предоставляющая интерфейс пользователя для работы с файловой системой и файлами. Файловый менеджер позволяет выполнять наиболее частые операции удаления над файлами - создание, открытие / воспроизведение / просмотр, редактирование, изменение, переименование, копирование, изменение атрибутов и свойств, файлов и назначение прав.
⚠️Именно проекты таких типов работодатели ценят в портфолио разработчиков, а наличие этих проектов в списке реализованных, даст вам весомые преимущества перед другими кандидатами.
🐍Методы list в Python💻
Во время собеседования на вакансию
python-разработчика очень часто звучат вопросы про списки и их методы.
Мы собрали для вас эти методы в одной статье.
А прочитав эту статью до конца, вы будете знать как удовлетворительно отеветить на этот вопрос.
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Подробнее про эти методы в примерах🚀
Во время собеседования на вакансию
python-разработчика очень часто звучат вопросы про списки и их методы.
Мы собрали для вас эти методы в одной статье.
А прочитав эту статью до конца, вы будете знать как удовлетворительно отеветить на этот вопрос.
1.
append()
- добавляет элемент в конец списка.2.
clear()
- удаляет все элементы из списка3.
copy()
- делает поверхностную копию списка4.
count()
- считает, сколько раз в списке встречается переданный аргумент.5.
extend()
- добавляет в конец списка итерируемую последовательность.6.
index()
- возвращает индекс указанного элемента. Если таких элементов несколько, вернет индекс только первого. Если таких элементов нет,генерируется исключение. Вторым и третьим аргументом можно указать срез для поиска.7.
insert()
- вставляет элемент перед указанным индексом. Сначала передается индекс, затем элемент.8.
pop()
- удаляет элемент по указанному индексу и возвращает его. Если индекс не указан, то удаляет и возвращает последний элемент. Метод генерирует исключения, если список пуст или указан индекс за пределами диапазона.9.
remove()
- удаляет первый объект из списка, значение которого равно аргументу. Если такого элемента нет, то возникает ошибка.10.
reverse()
- переворачивает список на месте.11.
sort()
- сортировка списка на месте (список изменяется, а не возвращается новый).Подробнее про эти методы в примерах🚀
Telegraph
🐍Методы list в Python💻
Во время собеседованния на вакансию python-разработчика очень часто звучат вопросы про списки и их методы. Мы собрали для вас эти методы в одной статье. А прочитав эту статью до конца, вы будете знать как удовлетворительно отеветить на этот вопрос. append()…
💡Лайфхаки и памятки для питонистов!
👉Вывести в консоль 2 или более списков одновременно.
Output:
👉Превратить строку в список.
Output:
👉Превратить список списков в один список.
Output:
👉Раздробить список в группы.
Output:
👉Вывести в консоль 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')]