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

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

Хранить данные нужно всем. Обычно при работе программы все хранится в оперативной памяти (ОЗУ), но при перезапуске все стирается. И для запоминания информацию записывают на жесткий диск. Это и есть База Данных.

Самая популярная База Данных - текстовый файл с записанными значениями. И правда очень удобно. Достаточно открыть файл и прочитать, что там лежит, особенно, если мы знаем какая строка сему соответствует.

Еще информацию которая меняется от программы к программе можно записать в отдельный Python файл. Так нам даже не придется его открывать.

#Базы_Данных
🌍 Актуальные новости со всей планеты на разных языках с помощью Python

⚙️ pip install googlenews

#tipsandtricks
⚡️ Кортеж, список, множество или словарь?

В Python часто встречаются эти понятия, но не все понимают, что это такое и чем они отличаются. Поэтому...

• Список — набор элементов, который может изменяться и индексироваться.

• Кортеж — набор элементов, которые не меняются, но также индексируется. Чаще всего его используют в функциях, которые возвращают какие-то значения, но их нельзя менять.

• Множество — набор элементов, которые могут меняться (зависит от способа создания). Он не индексируется, но его отличие в том, что все элементы ни разу не повторяются.

• Словарь — набор элементов типа ключ — значение. Ключи не могут меняться и являются "индексами", также они не должны повторятся. Значения могут и меняться, и повторятся.
Что выведет данный код?
Anonymous Poll
69%
True
15%
Error
8%
Ничего не выведет
8%
Узнать ответ
Базы Данных (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