Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Советы по Django
'null' vs. 'blank'
В моделях Django 'null' влияет на хранение данных в базе, позволяя полям хранить значения 'NULL'.
'blank' влияет на валидацию форм, разрешая пустые значения в формах.
👉@BookPython
'null' vs. 'blank'
В моделях Django 'null' влияет на хранение данных в базе, позволяя полям хранить значения 'NULL'.
'blank' влияет на валидацию форм, разрешая пустые значения в формах.
👉@BookPython
Похоже, я придумал свой алгоритм поиска кратчайшего пути
Я реализовал, похоже, собственный алгоритм поиска кратчайшего пути с отрицательными ребрами графа.
Почему собственный? Я искал подобное решение, но не нашел, возможно, оно уже было реализовано, просто плохо поискал. Жду Нобелевскую премию =)
Додумался я до него путем модификации классического Дейкстры. Прошу адекватно отнестись к содержимому, ибо это моя первая статья, и, возможно, я ничего не придумывал и, вообще, этот алгоритм не работает вовсе (но по многочисленным тестам он работает правильно).
Повторюсь, алгоритм работает с отрицательными ребрами графа (но не с циклическими отрицательными). Чем этот алгоритм отличается от известного Беллмана-Форда?
Эвристической сложностью! У известного алгоритма сложность составляет O(En), где n - количество узлов, Е - количество ребер. У "моего" алгоритма такая же ассимптотическая сложность. Но по моим расчетам худшая сложность в большинстве случаев не достигается. А у Беллмана-Форда худших случаев намного больше (об этом далее). Более того, в среднем алгоритм не превышает оригинальной сложности алгоритма Дейкстры, а именно O(n2+E). Об этом тоже напишу далее. Реализация на языке Python:
P.S.
В статье исправлены многие моменты, спасибо сообществу за тест-кейсы и подсказки. Некоторые комментарии не будут актуальными (в том числе саркастически-оскорбительные), т.к. я считаю, что доказал работоспособность алгоритма.
https://habr.com/ru/articles/811051/
👉@BookPython
Я реализовал, похоже, собственный алгоритм поиска кратчайшего пути с отрицательными ребрами графа.
Почему собственный? Я искал подобное решение, но не нашел, возможно, оно уже было реализовано, просто плохо поискал. Жду Нобелевскую премию =)
Додумался я до него путем модификации классического Дейкстры. Прошу адекватно отнестись к содержимому, ибо это моя первая статья, и, возможно, я ничего не придумывал и, вообще, этот алгоритм не работает вовсе (но по многочисленным тестам он работает правильно).
Повторюсь, алгоритм работает с отрицательными ребрами графа (но не с циклическими отрицательными). Чем этот алгоритм отличается от известного Беллмана-Форда?
Эвристической сложностью! У известного алгоритма сложность составляет O(En), где n - количество узлов, Е - количество ребер. У "моего" алгоритма такая же ассимптотическая сложность. Но по моим расчетам худшая сложность в большинстве случаев не достигается. А у Беллмана-Форда худших случаев намного больше (об этом далее). Более того, в среднем алгоритм не превышает оригинальной сложности алгоритма Дейкстры, а именно O(n2+E). Об этом тоже напишу далее. Реализация на языке Python:
P.S.
В статье исправлены многие моменты, спасибо сообществу за тест-кейсы и подсказки. Некоторые комментарии не будут актуальными (в том числе саркастически-оскорбительные), т.к. я считаю, что доказал работоспособность алгоритма.
https://habr.com/ru/articles/811051/
👉@BookPython
Слушаем и декодируем в реальном времени радиосигнал точного времени из интернета
Сегодня я хочу поговорить о том, как можно получить и декодировать сигналы точного времени, которые передаются по радио. Чтобы выполнить эту задачу, вам даже не понадобятся специальные устройства. Достаточно будет компьютера с более-менее быстрым интернет-соединением.
Технология передачи точного времени по радио не нова. Сигналы точного времени начали передавать практически сразу, как появился радиотелеграф. Сейчас передача сигналов точного времени осуществляется с помощью различных технологий. Помимо радио, информация о времени с разной степенью точности передаётся:
в интернете (NTP);
в сетях мобильной связи (NITZ);
в системах спутниковой навигации GPS, ГЛОНАСС, BeiDou-3, Galileo.
https://habr.com/ru/companies/ruvds/articles/746122/
👉@BookPython
Сегодня я хочу поговорить о том, как можно получить и декодировать сигналы точного времени, которые передаются по радио. Чтобы выполнить эту задачу, вам даже не понадобятся специальные устройства. Достаточно будет компьютера с более-менее быстрым интернет-соединением.
Технология передачи точного времени по радио не нова. Сигналы точного времени начали передавать практически сразу, как появился радиотелеграф. Сейчас передача сигналов точного времени осуществляется с помощью различных технологий. Помимо радио, информация о времени с разной степенью точности передаётся:
в интернете (NTP);
в сетях мобильной связи (NITZ);
в системах спутниковой навигации GPS, ГЛОНАСС, BeiDou-3, Galileo.
https://habr.com/ru/companies/ruvds/articles/746122/
👉@BookPython
Подборка Telegram каналов для программистов
Системное администрирование 📌
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://t.me/sysadminoff Новости Линукс Linux
https://t.me/tikon_1 Новости высоких технологий, науки и техники💡
https://t.me/mir_teh Мир технологий (Technology World)
https://t.me/rust_lib Полезный контент по программированию на Rust
https://t.me/golang_lib Библиотека Go (Golang) разработчика
https://t.me/itmozg Программисты, дизайнеры, новости из мира IT.
https://t.me/phis_mat Обучающие видео, книги по Физике и Математике
https://t.me/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста
1C разработка 📌
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов C/C++
https://t.me/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍
https://t.me/BookPython Библиотека Python разработчика
https://t.me/python_real Python подборки на русском и английском
https://t.me/python_360 Книги по Python Rus
Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_360 Книги по Java Rus
https://t.me/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
https://t.me/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/frontend_sovet Frontend советы, примеры и практика!
https://t.me/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://t.me/game_devv Все о разработке игр
Вакансии 📌
https://t.me/sysadmin_rabota Системный Администратор
https://t.me/progjob Вакансии в IT
Чат программистов📌
https://t.me/developers_ru
Библиотеки 📌
https://t.me/book_for_dev Книги для программистов Rus
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/books_reserv Книги для программистов
БигДата, машинное обучение 📌
https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/coddy_academy Полезные советы по программированию
QA, тестирование 📌
https://t.me/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://t.me/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности
https://t.me/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров
Английский 📌
https://t.me/UchuEnglish Английский с нуля
Математика 📌
https://t.me/Pomatematike Канал по математике
Excel лайфхак📌
https://t.me/Excel_lifehack
Системное администрирование 📌
https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало)
https://t.me/sysadminof Книги для админов, полезные материалы
https://t.me/i_odmin Все для системного администратора
https://t.me/i_odmin_book Библиотека Системного Администратора
https://t.me/i_odmin_chat Чат системных администраторов
https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др.
https://t.me/sysadminoff Новости Линукс Linux
https://t.me/tikon_1 Новости высоких технологий, науки и техники💡
https://t.me/mir_teh Мир технологий (Technology World)
https://t.me/rust_lib Полезный контент по программированию на Rust
https://t.me/golang_lib Библиотека Go (Golang) разработчика
https://t.me/itmozg Программисты, дизайнеры, новости из мира IT.
https://t.me/phis_mat Обучающие видео, книги по Физике и Математике
https://t.me/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста
1C разработка 📌
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов C/C++
https://t.me/cpp_geek Учим C/C++ на примерах
Программирование Python 📌
https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍
https://t.me/BookPython Библиотека Python разработчика
https://t.me/python_real Python подборки на русском и английском
https://t.me/python_360 Книги по Python Rus
Java разработка 📌
https://t.me/BookJava Библиотека Java разработчика
https://t.me/java_360 Книги по Java Rus
https://t.me/java_geek Учим Java на примерах
GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub
Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
https://t.me/kotlin_lib Подборки полезного материала по Kotlin
Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
https://t.me/frontend_sovet Frontend советы, примеры и практика!
https://t.me/React_lib Подборки по React js и все что с ним связано
Разработка игр 📌
https://t.me/game_devv Все о разработке игр
Вакансии 📌
https://t.me/sysadmin_rabota Системный Администратор
https://t.me/progjob Вакансии в IT
Чат программистов📌
https://t.me/developers_ru
Библиотеки 📌
https://t.me/book_for_dev Книги для программистов Rus
https://t.me/programmist_of Книги по программированию
https://t.me/proglb Библиотека программиста
https://t.me/bfbook Книги для программистов
https://t.me/books_reserv Книги для программистов
БигДата, машинное обучение 📌
https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning
Программирование 📌
https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций
https://t.me/coddy_academy Полезные советы по программированию
QA, тестирование 📌
https://t.me/testlab_qa Библиотека тестировщика
Шутки программистов 📌
https://t.me/itumor Шутки программистов
Защита, взлом, безопасность 📌
https://t.me/thehaking Канал о кибербезопасности
https://t.me/xakep_1 Статьи из "Хакера"
Книги, статьи для дизайнеров 📌
https://t.me/ux_web Статьи, книги для дизайнеров
Английский 📌
https://t.me/UchuEnglish Английский с нуля
Математика 📌
https://t.me/Pomatematike Канал по математике
Excel лайфхак📌
https://t.me/Excel_lifehack
argparse
Библиотека argparse является стандартным инструментом для обработки аргументов командной строки в Python. Она позволяет легко определить и обработать аргументы, передаваемые программе при запуске из командной строки.
В данном примере мы просто выводим значения аргументов на экран, но в реальном приложении вы можете использовать их для выполнения конкретных действий, например, чтения входного файла, обработки данных и записи результата в выходной файл.
👉@BookPython
Библиотека argparse является стандартным инструментом для обработки аргументов командной строки в Python. Она позволяет легко определить и обработать аргументы, передаваемые программе при запуске из командной строки.
В данном примере мы просто выводим значения аргументов на экран, но в реальном приложении вы можете использовать их для выполнения конкретных действий, например, чтения входного файла, обработки данных и записи результата в выходной файл.
👉@BookPython
Быстрая сортировка
Быстрая сортировка (quicksort) — это один из наиболее известных и широко применяемых алгоритмов сортировки. Она основана на использовании стратегии "разделяй и властвуй".
В этом коде мы выбираем элемент в середине списка в качестве "опорного". Затем мы создаем три списка: один для элементов меньше опорного, один для элементов равных опорному, и один для элементов больше опорного.
Мы рекурсивно применяем быструю сортировку к списку элементов, которые меньше и больше опорного элемента. Это продолжается до тех пор, пока не останется список, который нужно сортировать. В конце мы объединяем отсортированные списки вместе.
👉@BookPython
Быстрая сортировка (quicksort) — это один из наиболее известных и широко применяемых алгоритмов сортировки. Она основана на использовании стратегии "разделяй и властвуй".
В этом коде мы выбираем элемент в середине списка в качестве "опорного". Затем мы создаем три списка: один для элементов меньше опорного, один для элементов равных опорному, и один для элементов больше опорного.
Мы рекурсивно применяем быструю сортировку к списку элементов, которые меньше и больше опорного элемента. Это продолжается до тех пор, пока не останется список, который нужно сортировать. В конце мы объединяем отсортированные списки вместе.
👉@BookPython
Подборка односложных выражений на языке Python, которые повысят вашу производительность
Deleting multiple elements from a list
Factorial of a number
https://github.com/Allwin12/python-one-liners
👉@BookPython
Deleting multiple elements from a list
li = [1, 2, 3, 4, 5]
del li[0:3]
# [4, 5]
Factorial of a number
import math; fact_5 = math.factorial(5)
https://github.com/Allwin12/python-one-liners
👉@BookPython
Как создать Minecraft на Python? Обзор библиотеки Ursina Engine
Среди любителей Minecraft много энтузиастов: пока одни просто играют, другие запускают целые серверы и пишут модификации. А кто-то идет дальше и разрабатывает собственные песочницы. Последнее достаточно просто сделать на Python.
Под катом делюсь основами работы с библиотекой Ursina Engine и показываю, как с помощью нее создать мир из кубов.
https://habr.com/ru/companies/selectel/articles/704040/
@BookPython
Среди любителей Minecraft много энтузиастов: пока одни просто играют, другие запускают целые серверы и пишут модификации. А кто-то идет дальше и разрабатывает собственные песочницы. Последнее достаточно просто сделать на Python.
Под катом делюсь основами работы с библиотекой Ursina Engine и показываю, как с помощью нее создать мир из кубов.
https://habr.com/ru/companies/selectel/articles/704040/
@BookPython
Ускорение кода на Python с помощью Numba Vectorize
В мире численных вычислений оптимизация производительности имеет первостепенное значение. Python с его интерпретируемой природой не всегда может предложить желаемую скорость для интенсивных вычислений. Однако на помощь приходит Numba, мощная библиотека, с ее возможностями вычислений, ориентированных на массивы, и компиляцией «точно в срок» (JIT). В этой статье мы рассмотрим одну из самых ценных функций Numba: Numba Vectorize.
https://coderslegacy.com/python-code-with-numba-vectorize/
@BookPython
В мире численных вычислений оптимизация производительности имеет первостепенное значение. Python с его интерпретируемой природой не всегда может предложить желаемую скорость для интенсивных вычислений. Однако на помощь приходит Numba, мощная библиотека, с ее возможностями вычислений, ориентированных на массивы, и компиляцией «точно в срок» (JIT). В этой статье мы рассмотрим одну из самых ценных функций Numba: Numba Vectorize.
https://coderslegacy.com/python-code-with-numba-vectorize/
@BookPython
CodersLegacy
Accelerating Python Code with Numba Vectorize - CodersLegacy
We will delve into the inner workings of Numba Vectorize, understand how it harnesses the power of SIMD operations to improve performance.
Создание игрушечного языка программирования на Python
Я подумал, что было бы забавно выйти за пределы своей зоны комфорта в области веб-разработки и написать о чем-то совершенно другом и новом, о чем я никогда раньше не писал. Поэтому сегодня я покажу вам, как реализовать язык программирования!
https://blog.miguelgrinberg.com/post/building-a-toy-programming-language-in-python
@BookPython
Я подумал, что было бы забавно выйти за пределы своей зоны комфорта в области веб-разработки и написать о чем-то совершенно другом и новом, о чем я никогда раньше не писал. Поэтому сегодня я покажу вам, как реализовать язык программирования!
https://blog.miguelgrinberg.com/post/building-a-toy-programming-language-in-python
@BookPython
Miguelgrinberg
Building a Toy Programming Language in Python
I thought it would be fun to go outside of my comfort zone of web development topics and write about something completely different and new, something I have never written about before. So today, I'm…
Разбиваем видео на n кол-во изображений
Для разбиения видео на n изображений вам понадобится использовать библиотеку OpenCV в Python.
В этом примере функция
Обратите внимание, что код использует целочисленное деление
@BookPython
Для разбиения видео на n изображений вам понадобится использовать библиотеку OpenCV в Python.
В этом примере функция
video_to_images
принимает путь к видео (`video_path
`) и количество желаемых изображений (`frames_count
`). Она открывает видеофайл, читает каждый кадр и сохраняет каждый "шаг" кадров как отдельное изображение. Затем функция прекращает обработку, когда необходимое количество изображений сохранено.Обратите внимание, что код использует целочисленное деление
//
и целочисленное преобразование int()
для обеспечения, чтобы каждое изображение было сохранено через примерно одинаковое количество кадров, чтобы равномерно распределить их по времени видео.@BookPython
Пять декораторов Python, которые могут сократить код в два раза
В этой статье мы рассмотрим концепцию Python-оберток и приведем пять примеров, которые могут улучшить процесс разработки на Python.
https://habr.com/ru/companies/slurm/articles/748176/
original https://python.plainenglish.io/five-python-wrappers-that-can-reduce-your-code-by-half-af775feb1d5
👉 @BookPython
В этой статье мы рассмотрим концепцию Python-оберток и приведем пять примеров, которые могут улучшить процесс разработки на Python.
https://habr.com/ru/companies/slurm/articles/748176/
original https://python.plainenglish.io/five-python-wrappers-that-can-reduce-your-code-by-half-af775feb1d5
👉 @BookPython
Нижнее подчеркивание
1.
2. интерактивный режим использует
3. руководство модуля
👉 @BookPython
1.
_
используется, когда вам нужно придумать имена для значений, которые вам не нужны – например, в циклах for
.2. интерактивный режим использует
_
для хранения результата последнего выполненного выражения.3. руководство модуля
gettext
рекомендует псевдоним его функции gettext()
для _()
, чтобы минимизировать загромождение вашего кода.👉 @BookPython