Python Skills 🐍
303 subscribers
1.02K photos
17 videos
302 links
Канал полезного и юмористического контента на тему программирования, в частности такого языка как Python.

По всем вопросам: @andrey_andrey01
Download Telegram
Базы Данных (CSV)

Безусловно прошлый способ с данными в txt файле действенный, но им никто не пользуется. Обычно использую более проlвинутые БД с использованием SQL.

Вот только иногда с txt работать намного проще, а возможно и быстрее. В таком случае рекомендуем использовать формат SCV. Хороший пример - таблица из значений температуры по дням (в выходные наблюдение не велось):

Data;Monday;Tuesday;Wednesday;Wednes­day;Friday
1;1.7;2.8;14;16.9;5.0

Еще можно к примеру хранить местоположение объектов, для работы с CSV есть специальный модуль, который так и называется scv. На картинке предоставлен вывод. Сохранение файла делается почти так же, как и у списков. Подробнее в следующем посте.

#Базы_Данных #CSV
Информация по Python 3.10

Многие очень ждут выхода 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 — документация для пользования классом. Также её можно создать используя многострочную строку после создания класса.
Базы Данных

Разберем подробнее библиотеку 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, позволяющий осуществлять различную работу с файловыми путями.

Для представления пути к файлу есть класс Path, с объектами которого уже можно производить операции. Например, методы exists() и is_dir() проверяют, существует ли файл и является ли он директорией.

Но самой классной фичей является замена os.path.join() на более удобный и элегантный вариант с использованием слэшей, как показано на картинке.

Таким образом, пакет pathlib может стать частичной заменой os в некоторых случаях при работе с файловыми путями.

#pathlib
Топ. Работа с сетевыми сокетами на Python

Сетевой сокет — это эндпоинт межпроцессного взаимодействия в компьютерной сети. Давайте рассмотрим имеющиеся в Python методы для работы с сокетами.

Читать статью

#модули
Каким будет результат?
Anonymous Poll
53%
8
6%
16
41%
Error
0%
Узнать ответ
Топ. Регулярное выражение для проверки римских чисел

На Codewars есть задачка: нужно написать функцию для конвертации римских чисел в арабские. В этой статье мы сосредоточились на одном из этапов решения: проверке, ввел ли пользователь валидное римское число.

Читать статью

#топ