Информация по Python 3.10
Многие очень ждут выхода Python версии 3.10, и вот недавно выпустили первую бета версию, с которой уже можно поэкспериментировать.
Для тех, кто в танке: альфа версии выходили регулярно в последние полгода, а полный релиз запланирован на 4 октября 2021.
Вот самые интересные фичи в новой версии:
— PEP 636: долгожданный match-case, похож на switch-case в других языках.
— PEP 613: явные псевдонимы типов с помощью TypeAlias.
— bpo-123782: исправление небольшого, но сильно раздражающего бага с контекстными менеджерами.
#updates
Многие очень ждут выхода Python версии 3.10, и вот недавно выпустили первую бета версию, с которой уже можно поэкспериментировать.
Для тех, кто в танке: альфа версии выходили регулярно в последние полгода, а полный релиз запланирован на 4 октября 2021.
Вот самые интересные фичи в новой версии:
— PEP 636: долгожданный match-case, похож на switch-case в других языках.
— PEP 613: явные псевдонимы типов с помощью TypeAlias.
— bpo-123782: исправление небольшого, но сильно раздражающего бага с контекстными менеджерами.
#updates
⚡️ Классы и особые методы
Каждый раз, когда вы создаёте какой-либо класс, он наследуется от object.
Object имеет особые методы:
init — инициализатор класса. Он вызывается тогда, когда класс создаётся.
str, repr— возвращает класс в виде строки. Разница между ними в том, что str должен вернуть боле «красивый» вывод.
getatribute, setattr — вызывается методами getattr и setattr. Позволяют получать и задавать значения переменных классов.
doc — документация для пользования классом. Также её можно создать используя многострочную строку после создания класса.
Каждый раз, когда вы создаёте какой-либо класс, он наследуется от object.
Object имеет особые методы:
init — инициализатор класса. Он вызывается тогда, когда класс создаётся.
str, repr— возвращает класс в виде строки. Разница между ними в том, что str должен вернуть боле «красивый» вывод.
getatribute, setattr — вызывается методами getattr и setattr. Позволяют получать и задавать значения переменных классов.
doc — документация для пользования классом. Также её можно создать используя многострочную строку после создания класса.
Что выведет данный код?
Anonymous Poll
38%
python, PYTHON
13%
python, python
25%
PYTHON, python
13%
PYTHON, PYTHON
13%
Узнать ответ
Базы Данных
Разберем подробнее библиотеку CSV. Модуль имеет два основных метода reader и writer, для чтения и записи соответственно. Не забывайте указывать кодировку, чаще всего это 'utf8'
В некоторых случаях при открытии файла рекомендуется получить одну строку, без 'n'. Делается это так:
Чтение возвращает итерируемый объект, а записать что-то в файл можно через метод writerow.
#Базы_Данных #CSV
Разберем подробнее библиотеку CSV. Модуль имеет два основных метода reader и writer, для чтения и записи соответственно. Не забывайте указывать кодировку, чаще всего это 'utf8'
В некоторых случаях при открытии файла рекомендуется получить одну строку, без 'n'. Делается это так:
open(file, newline='')
При начале работе с csv указываем разделитель delimiter=';' и разделитель текста quotechar='"'Чтение возвращает итерируемый объект, а записать что-то в файл можно через метод writerow.
#Базы_Данных #CSV
Каким будет результат выполнения кода?
Anonymous Poll
50%
{"Yellow", "Orange", "Black"}
25%
{"Yellow", "Orange", "Black", "Blue"}
13%
Error
13%
Узнать ответ
Удобная работа с файловыми путями
В стандартной библиотеке есть максимально удобный пакет
Для представления пути к файлу есть класс
Но самой классной фичей является замена
Таким образом, пакет
#pathlib
В стандартной библиотеке есть максимально удобный пакет
pathlib
, позволяющий осуществлять различную работу с файловыми путями. Для представления пути к файлу есть класс
Path
, с объектами которого уже можно производить операции. Например, методы exists()
и is_dir()
проверяют, существует ли файл и является ли он директорией. Но самой классной фичей является замена
os.path.join()
на более удобный и элегантный вариант с использованием слэшей, как показано на картинке. Таким образом, пакет
pathlib
может стать частичной заменой os
в некоторых случаях при работе с файловыми путями. #pathlib
Топ. Работа с сетевыми сокетами на Python
Сетевой сокет — это эндпоинт межпроцессного взаимодействия в компьютерной сети. Давайте рассмотрим имеющиеся в Python методы для работы с сокетами.
Читать статью
#модули
Сетевой сокет — это эндпоинт межпроцессного взаимодействия в компьютерной сети. Давайте рассмотрим имеющиеся в Python методы для работы с сокетами.
Читать статью
#модули
Топ. Регулярное выражение для проверки римских чисел
На Codewars есть задачка: нужно написать функцию для конвертации римских чисел в арабские. В этой статье мы сосредоточились на одном из этапов решения: проверке, ввел ли пользователь валидное римское число.
Читать статью
#топ
На Codewars есть задачка: нужно написать функцию для конвертации римских чисел в арабские. В этой статье мы сосредоточились на одном из этапов решения: проверке, ввел ли пользователь валидное римское число.
Читать статью
#топ
Отправляем электронные письма
SMTP (Simple Mail Transfer Protocol) — это протокол, позволяющий отправлять электронные письма. В стандартной библиотеке есть пакет
Для подключения к серверу будем использовать класс
Отправлять письма можно одноименным методом
Но здесь еще следует обратить внимание на то, что некоторые почтовые сервисы могут не разрешить так сразу подключаться к их серверам и производить операции. В нашем случае пришлось немного повоевать с Gmail.
#email #smtp
SMTP (Simple Mail Transfer Protocol) — это протокол, позволяющий отправлять электронные письма. В стандартной библиотеке есть пакет
smtplib
, реализующий его поведение. Для подключения к серверу будем использовать класс
SMTP_SSL
, который включает в себя и шифрование. В его аргументы передаем адрес сервера и порт. Авторизация происходит с помощью метода login
, в который передаем соответственно логин и пароль. Отправлять письма можно одноименным методом
sendmail
, который принимает адреса отправителя и получается, а также сам текст. В конце программы следует закрывать соединение с помощью метода quite()
. Но здесь еще следует обратить внимание на то, что некоторые почтовые сервисы могут не разрешить так сразу подключаться к их серверам и производить операции. В нашем случае пришлось немного повоевать с Gmail.
#email #smtp
Что выведет этот код?
Anonymous Poll
0%
Hello, World
0%
"Hello", "World"
29%
"Hello, world!" -", world!"
71%
Ошибку