Присваиваем значение переменной окружения
Для присвоения значения любой переменной среды используется функция setdefault().
Давайте напишем код, чтобы с помощью функции setdefault() изменить значение переменной DEBUG на True (по умолчанию установлено False). После установки значения мы проверим его функцией get().
Если мы сделали всё правильно, выведется сообщение «Режим отладки включен», в противном случае – «Режим отладки выключен».
Подписывайтесь на канал 👉@pythonofff
Для присвоения значения любой переменной среды используется функция setdefault().
Давайте напишем код, чтобы с помощью функции setdefault() изменить значение переменной DEBUG на True (по умолчанию установлено False). После установки значения мы проверим его функцией get().
Если мы сделали всё правильно, выведется сообщение «Режим отладки включен», в противном случае – «Режим отладки выключен».
Подписывайтесь на канал 👉@pythonofff
👍2
Ускоряем код с помощью векторизации
Одним из приемов для ускорения работы циклов является векторизация вычислений, т. е. использование функций, которые поддерживают операции над векторами.
Вообще лучший способ ускорить любой цикл – это отказаться от него. В примере выше для работы с функцией my_func мы могли бы вызвать ее в цикле для каждого элемента списка, но гораздо проще использовать vectorize.
По сути, vectorize преобразует функцию таким образом, что она начинает принимать весь вектор целиком, а не отдельный его элемент. Надо помнить, что такой подход не всегда приводит к значительному ускорению.
Подписывайтесь на канал 👉@pythonofff
Одним из приемов для ускорения работы циклов является векторизация вычислений, т. е. использование функций, которые поддерживают операции над векторами.
Вообще лучший способ ускорить любой цикл – это отказаться от него. В примере выше для работы с функцией my_func мы могли бы вызвать ее в цикле для каждого элемента списка, но гораздо проще использовать vectorize.
По сути, vectorize преобразует функцию таким образом, что она начинает принимать весь вектор целиком, а не отдельный его элемент. Надо помнить, что такой подход не всегда приводит к значительному ускорению.
Подписывайтесь на канал 👉@pythonofff
👍4
Уже 10 августа начнется наш подготовительный курс по Python!
Даём только мясную и прикладную информацию. Никакой воды и траты твоего времени. По окончании 14-дневного курса ты уже владеешь базовым знанием языка и даже напишешь собственную программу!
Прямо сейчас переходите по ссылке и бронируйте место!
Даём только мясную и прикладную информацию. Никакой воды и траты твоего времени. По окончании 14-дневного курса ты уже владеешь базовым знанием языка и даже напишешь собственную программу!
Прямо сейчас переходите по ссылке и бронируйте место!
👍3
Как создать базовый объект timedelta в Python
Для начала давайте создадим базовый объект timedelta:
Итак, мы успешно создали объект timedelta. Теперь нам нужно создать «эталонное» время, чтобы можно было применить созданный нами объект timedelta для выполнения каких-нибудь арифметических действий.
Подписывайтесь на канал 👉@pythonofff
Для начала давайте создадим базовый объект timedelta:
Итак, мы успешно создали объект timedelta. Теперь нам нужно создать «эталонное» время, чтобы можно было применить созданный нами объект timedelta для выполнения каких-нибудь арифметических действий.
Подписывайтесь на канал 👉@pythonofff
👍1
Explicit Conversion Flag
Флаг явного преобразования используется для преобразования значения поля format перед его непосредственным форматированием.
Это поле можно использовать для переопределения поведения format для какого либо конкретного типа и форматирования значения. В настоящее время распространены два явных флага преобразования:
!r – преобразует значение в строку, используя функцию repr()
!s – преобразует значение в строку, используя функцию str()
В примере, в случае с флагом !r строка 'Hello' будет напечатана с кавычками в поле шириной не менее 20 символов, а в случае с флагом !s – без кавычек (в более удобном для чтения виде).
Подписывайтесь на канал 👉@pythonofff
Флаг явного преобразования используется для преобразования значения поля format перед его непосредственным форматированием.
Это поле можно использовать для переопределения поведения format для какого либо конкретного типа и форматирования значения. В настоящее время распространены два явных флага преобразования:
!r – преобразует значение в строку, используя функцию repr()
!s – преобразует значение в строку, используя функцию str()
В примере, в случае с флагом !r строка 'Hello' будет напечатана с кавычками в поле шириной не менее 20 символов, а в случае с флагом !s – без кавычек (в более удобном для чтения виде).
Подписывайтесь на канал 👉@pythonofff
👍3
Проверяем, присвоено ли значение переменной окружения
Давайте создадим Python-файл со следующим скриптом для проверки переменных. Для чтения значений переменных мы используем модуль os, а модуль sys — для прекращения работы приложения.
Бесконечный цикл while непрерывно принимает от пользователя имена переменных и проверяет их значения до тех пор, пока пользователь не введёт имя переменной, которой не присвоено значение.
Если пользователь вводит имя переменной окружения, которой присвоено значение, это значение выводится, если же нет — выводится соответствующее сообщение и процесс останавливается.
Подписывайтесь на канал 👉@pythonofff
Давайте создадим Python-файл со следующим скриптом для проверки переменных. Для чтения значений переменных мы используем модуль os, а модуль sys — для прекращения работы приложения.
Бесконечный цикл while непрерывно принимает от пользователя имена переменных и проверяет их значения до тех пор, пока пользователь не введёт имя переменной, которой не присвоено значение.
Если пользователь вводит имя переменной окружения, которой присвоено значение, это значение выводится, если же нет — выводится соответствующее сообщение и процесс останавливается.
Подписывайтесь на канал 👉@pythonofff
👍1
Вычисляем размер объектов в памяти
Чтобы вычислить размер какого-либо объекта, можно воспользоваться функцией sys.getsizeof(object[, default]). Поскольку Python написан в полном соответствии с парадигмой ООП, таким объектом может быть все что угодно.
Однако, следует помнить, что хотя все built-in (встроенные) объекты и вернут правильный размер, в общем случае это не должно быть верно для каких-либо пользовательских объектов.
Аргумент default позволяет определить значение, которое будет возвращено, если тип объекта не предоставляет средства для извлечения размера и вызовет TypeError .
Функция getsizeof вызывает метод __sizeof__ объекта и добавляет дополнительные служебные данные сборщика мусора, если конечно объект управляется сборщиком мусора.
Подписывайтесь на канал 👉@pythonofff
Чтобы вычислить размер какого-либо объекта, можно воспользоваться функцией sys.getsizeof(object[, default]). Поскольку Python написан в полном соответствии с парадигмой ООП, таким объектом может быть все что угодно.
Однако, следует помнить, что хотя все built-in (встроенные) объекты и вернут правильный размер, в общем случае это не должно быть верно для каких-либо пользовательских объектов.
Аргумент default позволяет определить значение, которое будет возвращено, если тип объекта не предоставляет средства для извлечения размера и вызовет TypeError .
Функция getsizeof вызывает метод __sizeof__ объекта и добавляет дополнительные служебные данные сборщика мусора, если конечно объект управляется сборщиком мусора.
Подписывайтесь на канал 👉@pythonofff
👍3
Хранение в памяти
При создании списка, в памяти резервируется пустая область. С одной стороны, это ничем не отличается от создания любого другого типа данных, но разница в том, что содержимое list может меняться
Подписывайтесь на канал 👉@pythonofff
При создании списка, в памяти резервируется пустая область. С одной стороны, это ничем не отличается от создания любого другого типа данных, но разница в том, что содержимое list может меняться
Подписывайтесь на канал 👉@pythonofff
👍6
Not a Number
В модуле math есть особый объект, который называется NaN (Not a Number).
Эти объекты NaN не уникальны, и даже не равны самим себе, так что вы можете иметь несколько подобных объектов, взятых из нескольких разных источников.
Например можно создать подобный объект, просто передав строку 'nan' во float. Кстати говоря, это значит что вы можете использовать NaN в качестве ключа в словаре (хотя мы и не советуем это делать).
Подписывайтесь на канал 👉@pythonofff
В модуле math есть особый объект, который называется NaN (Not a Number).
Эти объекты NaN не уникальны, и даже не равны самим себе, так что вы можете иметь несколько подобных объектов, взятых из нескольких разных источников.
Например можно создать подобный объект, просто передав строку 'nan' во float. Кстати говоря, это значит что вы можете использовать NaN в качестве ключа в словаре (хотя мы и не советуем это делать).
Подписывайтесь на канал 👉@pythonofff
👍4
Форматирование строки
Самые важные части кода — это входные данные, логика и выходные данные. Все три части требуют некоторого форматирования при написании кода для получения лучших и более удобных для восприятия человеком выходных данных. В Python имеется целый ряд методов форматирования строки.
Подписывайтесь на канал 👉@pythonofff
Самые важные части кода — это входные данные, логика и выходные данные. Все три части требуют некоторого форматирования при написании кода для получения лучших и более удобных для восприятия человеком выходных данных. В Python имеется целый ряд методов форматирования строки.
Подписывайтесь на канал 👉@pythonofff
👍3
Выбор профессии – процесс ответственный. Особенно, если меняешь её, когда за плечами два универа по совету родителей, собственная семья и ипотека впридачу.
Хотите начать всё сначала? Да так, чтобы кайфовать от любимого дела, работать из любой точки земного шара и иметь практически неограниченные возможности для профессионального роста и заработка? Изучайте программирование!
Но сначала приходите на День открытых дверей в Хекслет. 11 августа в 19.00 мы будем говорить о профессии Python-разработчик.
Покажем, что программистом можно стать в любом возрасте и с любым профессиональным бэкграундом. Дадим роадмап для новичка – что учить и куда развиваться. Посоветуем, как искать первую работу и собрать классное портфолио. А еще проведем увлекательный квиз и подарим подарки.
Вы с нами? Тогда переходите по ссылке и занимайте место на вебинаре!
Хотите начать всё сначала? Да так, чтобы кайфовать от любимого дела, работать из любой точки земного шара и иметь практически неограниченные возможности для профессионального роста и заработка? Изучайте программирование!
Но сначала приходите на День открытых дверей в Хекслет. 11 августа в 19.00 мы будем говорить о профессии Python-разработчик.
Покажем, что программистом можно стать в любом возрасте и с любым профессиональным бэкграундом. Дадим роадмап для новичка – что учить и куда развиваться. Посоветуем, как искать первую работу и собрать классное портфолио. А еще проведем увлекательный квиз и подарим подарки.
Вы с нами? Тогда переходите по ссылке и занимайте место на вебинаре!
👍2
Forwarded from BigData
NGBoost: Natural Gradient Boosting for Probabilistic Prediction
Github: https://github.com/stanfordmlgroup/ngboost
Slides: https://drive.google.com/file/d/183BWFAdFms81MKy6hSku8qI97OwS_JH_/view
Paper: https://arxiv.org/abs/2106.03823v1
👉 @bigdata_1
Github: https://github.com/stanfordmlgroup/ngboost
Slides: https://drive.google.com/file/d/183BWFAdFms81MKy6hSku8qI97OwS_JH_/view
Paper: https://arxiv.org/abs/2106.03823v1
👉 @bigdata_1
👍3
Вычисление выражений Python
Вы наверняка знакомы с eval, но знаете ли вы о literal_eval? Вряд ли. Для безопасного исполнения выражений, содержащих исключительно литералы, вы можете делать так, как показано на картинке выше.
Между прочим, данная фича находится в языке уже очень давно.
Подписывайтесь на канал 👉@pythonofff
Вы наверняка знакомы с eval, но знаете ли вы о literal_eval? Вряд ли. Для безопасного исполнения выражений, содержащих исключительно литералы, вы можете делать так, как показано на картинке выше.
Между прочим, данная фича находится в языке уже очень давно.
Подписывайтесь на канал 👉@pythonofff
❤2👍1
Проверка наличия подстрок в строке списка
А вот и задача, с которой многим приходится иметь дело ежедневно: проверять, есть ли в строке подстрока. В отличие от других языков программирования, в Python имеется для этого хорошее ключевое слово.
Подписывайтесь на канал 👉@pythonofff
А вот и задача, с которой многим приходится иметь дело ежедневно: проверять, есть ли в строке подстрока. В отличие от других языков программирования, в Python имеется для этого хорошее ключевое слово.
Подписывайтесь на канал 👉@pythonofff
👍4
Полезность модуля math
Сложно переоценить пользу модуля math, если имеешь дело с какими-либо математическими функциями. Модуль представляет собой обширный функционал для работы с числами.
Его стоит импортировать тогда, когда вам необходимо работать с математикой, но не требуется избыточность модуля numpy. Например, можно импортировать число pi, как в примере.
Модуль math обеспечивает доступ к некоторым популярным математическим функциям и константам, к тому же он является встроенным (не нужно делать установку через pip).
Подписывайтесь на канал 👉@pythonofff
Сложно переоценить пользу модуля math, если имеешь дело с какими-либо математическими функциями. Модуль представляет собой обширный функционал для работы с числами.
Его стоит импортировать тогда, когда вам необходимо работать с математикой, но не требуется избыточность модуля numpy. Например, можно импортировать число pi, как в примере.
Модуль math обеспечивает доступ к некоторым популярным математическим функциям и константам, к тому же он является встроенным (не нужно делать установку через pip).
Подписывайтесь на канал 👉@pythonofff
👍1
Поиск уникальных и повторяющихся элементов в списке в Python
Список в Python – это упорядоченный набор элементов, с разрешенными дубликатами. Set – это набор уникальных элементов. Мы можем использовать это свойство, чтобы получить только уникальные элементы списка. Передайте список в качестве аргумента конструктору набора, и он вернет набор уникальных элементов.
Подписывайтесь на канал 👉@pythonofff
Список в Python – это упорядоченный набор элементов, с разрешенными дубликатами. Set – это набор уникальных элементов. Мы можем использовать это свойство, чтобы получить только уникальные элементы списка. Передайте список в качестве аргумента конструктору набора, и он вернет набор уникальных элементов.
Подписывайтесь на канал 👉@pythonofff
👍2
Логические any и all
Одна из многих причин, почему Python является таким популярным языком, заключается в том, что он читаем и выразителен. Предлагаю взглянуть на прикрепленный код.
Функция any возвращает значение True, если хотя бы одно из переданных утверждений верно, all – в случае, если все верны.
На мой взгляд, эти две функции заслуживают отдельного внимания всего лишь из-за их простоты в использовании.
Подписывайтесь на канал 👉@pythonofff
Одна из многих причин, почему Python является таким популярным языком, заключается в том, что он читаем и выразителен. Предлагаю взглянуть на прикрепленный код.
Функция any возвращает значение True, если хотя бы одно из переданных утверждений верно, all – в случае, если все верны.
На мой взгляд, эти две функции заслуживают отдельного внимания всего лишь из-за их простоты в использовании.
Подписывайтесь на канал 👉@pythonofff
👍3
Прием нескольких входных значений, разделенных пробелами
Этот фрагмент кода позволяет принимать сразу несколько значений вводимых данных, которые разделены пробелами. Он пригодится при решении задач на соревнованиях по программированию.
Подписывайтесь на канал 👉@pythonofff
Этот фрагмент кода позволяет принимать сразу несколько значений вводимых данных, которые разделены пробелами. Он пригодится при решении задач на соревнованиях по программированию.
Подписывайтесь на канал 👉@pythonofff
Подборка каналов для IT специалистов 🎯
https://t.me/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
https://t.me/kotlin_lib Подборки полезного материала по Kotlin
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/React_lib Подборки по React js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста
https://t.me/frontend_sovet Frontend советы, примеры и практика!
Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов 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
GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub
CodePen 📌
https://t.me/codepen_1 Сообщество пользователей CodePen
Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
Разработка игр 📌
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/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/ux_web Статьи, книги для дизайнеров
https://t.me/arhitekturamira World Architecture
Системное администрирование 📌
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/UchuEnglish Английский с нуля
Математика 📌
https://t.me/Pomatematike Канал по математике
Арбитраж трафика 📌
https://t.me/partnerochkin CPA и арбитраж трафика
Крипта 📌
https://t.me/bitkoinoff Новости криптовалют
Метавселенная, GameFi, Crypto 📌
https://t.me/metaverse360
DeepFake 📌
https://t.me/deepfakenow Публикуем deepfake видео
Мир технологий 📌
https://t.me/mir_teh Видео из мира технологий
Excel лайфхак📌
https://t.me/Excel_lifehack
https://t.me/php_lib Библиотека PHP программиста 👨🏼💻👩💻
https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С
https://t.me/kotlin_lib Подборки полезного материала по Kotlin
https://t.me/nodejs_lib Подборки по Node js и все что с ним связано
https://t.me/React_lib Подборки по React js и все что с ним связано
https://t.me/ruby_lib Библиотека Ruby программиста
https://t.me/frontend_sovet Frontend советы, примеры и практика!
Программирование C++📌
https://t.me/cpp_lib Библиотека C/C++ разработчика
https://t.me/cpp_knigi Книги для программистов 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
GitHub Сообщество 📌
https://t.me/Githublib Интересное из GitHub
CodePen 📌
https://t.me/codepen_1 Сообщество пользователей CodePen
Базы данных (Data Base) 📌
https://t.me/database_info Все про базы данных
Мобильная разработка: iOS, Android 📌
https://t.me/developer_mobila Мобильная разработка
Фронтенд разработка 📌
https://t.me/frontend_1 Подборки для frontend разработчиков
Разработка игр 📌
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/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/ux_web Статьи, книги для дизайнеров
https://t.me/arhitekturamira World Architecture
Системное администрирование 📌
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/UchuEnglish Английский с нуля
Математика 📌
https://t.me/Pomatematike Канал по математике
Арбитраж трафика 📌
https://t.me/partnerochkin CPA и арбитраж трафика
Крипта 📌
https://t.me/bitkoinoff Новости криптовалют
Метавселенная, GameFi, Crypto 📌
https://t.me/metaverse360
DeepFake 📌
https://t.me/deepfakenow Публикуем deepfake видео
Мир технологий 📌
https://t.me/mir_teh Видео из мира технологий
Excel лайфхак📌
https://t.me/Excel_lifehack
Telegram
1C программист
Cтатьи, курсы, советы, шаблоны кода 1С. По всем вопросам @evgenycarter
👍1
Время исполнения кода
Иногда приходится выбирать между несколькими вариантами кода, и часто отталкиваются от его скорости. Пример вычисления времени исполнения кода мы сейчас и покажем.
Всё достаточно просто: с помощью модуля time запоминаем начальное время, выполняем основной код, узнаём конечное время и просто высчитываем разницу.
Если будете использовать этот пример, то просто вставьте свой код вместо комментария.
Подписывайтесь на канал 👉@pythonofff
Иногда приходится выбирать между несколькими вариантами кода, и часто отталкиваются от его скорости. Пример вычисления времени исполнения кода мы сейчас и покажем.
Всё достаточно просто: с помощью модуля time запоминаем начальное время, выполняем основной код, узнаём конечное время и просто высчитываем разницу.
Если будете использовать этот пример, то просто вставьте свой код вместо комментария.
Подписывайтесь на канал 👉@pythonofff
👍5