Python Ninja | Программирование
6.92K subscribers
1.08K photos
99 videos
919 links
Канал для всех кто хочет освоить или прокачать навыки программирования на Python. Присоединяйся, чтобы стать настоящим Python Ninja!

Связь: @sfoninja
Download Telegram
Найди неверное выражение с оператором присваивания

Что выведет код 😢

Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Варианты
Anonymous Quiz
10%
A
6%
B
10%
C
74%
D
Нашёл сокровищницу: «Velxio» эмулятор Arduino и ESP32 без железа

Оpen-source проект, который позволяет эмулировать Arduino, ESP32 и Raspberry Pi без физического оборудования

Можно писать код (C++ или Python), компилировать и запускать его на виртуальных платах с поддержкой периферии (GPIO, I2C, SPI и др) ⌨️

Попробовать можно в веб-версии или развернуть через GitHub

Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Хеширование паролей в Python с помощью SHA-256

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

Пример ниже показывает, как это работает с hashlib.sha256
from hashlib import sha256

# always the same for "mySecret123"
saved_password = sha256(
"mySecret123".encode()
).hexdigest()

# Can't reverse it back to "mySecret123"
# But can hash and compare
password = sha256(
input("Your password: ").encode()
).hexdigest()

if password == saved_password:
print('Welcome!')
else:
print('Access denied!')


Особенности:
Хеш всегда одинаков для одинаковой строки

Невозможно восстановить оригинальный пароль из хеша

Проверка идёт через сравнение хешей, а не через хранение реального пароля


✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Гид по Шардингу Баз Данных

Отличная инфографика как работает шардинг метод горизонтального разделения базы данных для повышения производительности, масштабируемости и отказоустойчивости

В карточке показаны основные виды шардинга:

🟠по диапазону
🟠по ключу/хэшу
🟠по директории
🟠а также способы маршрутизации запросов


Полезно для backend-разработчиков, работающих с большими объемами данных и распределёнными системами🤣

Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Когда выбрал не тот язык 👹

Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6
Принёс подарок «Labex» интерактивная платформа для обучения DevOps и Linux

Более 1000 интерактивных лабораторий и пошаговых туториалов по DevOps, Linux, информационной безопасности, Python и другим направлениям

Все занятия проходят прямо в браузере — без установки, настройки или дополнительного ПО. Практикуйтесь в реальных средах, оттачивайте навыки и осваивайте технологии в удобном формате 😎

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Neural Networks

Визуальное и доступное руководство по нейронным сетям, созданное в рамках образовательной инициативы Amazon Machine Learning University

Ссылка источник

Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Полезная находка: интерактивный учебник по машинному обучению

Визуальный подход к изучению ML алгоритмов, позволяет наблюдать весь процесс обучения моделей в реальном времени

Здесь можно буквально “увидеть”, как работает градиентный спуск, обучаются нейросети или формируются кластеры

Ценный ресурс если хочешь наконец понять ML 😱

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
Двойной реверс строки в Python

Что выведет код 👍

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Варианты
Anonymous Quiz
27%
A
62%
B
7%
C
4%
D
Отличная шпаргалка по 75+ наиболее востребованным Linux-командам

LinuxOpsys собрал в одной публикации всё, что нужно знать, чтобы уверенно работать в командной строке. Более 75 команд — от базовых до продвинутых — описаны с пояснениями и примерами

PDF версия здесь

Ссылка источник

Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Шпаргалка по операторам Python для новичков

Наглядная таблица с основными арифметическими операторами в Python: сложение, вычитание, умножение, деление, остаток от деления, степень и целочисленное деление

Держи под рукой🗒

Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2👍1
Подарочек на выходные практический курс «Practical Python Programming»

Охватывает ключевые темы: организация кода, ООП, внутреннее устройство объектов, генераторы, тестирование и пакеты. Более 10 000 звёзд на GitHub, без регистрации, с примерами кода и домашками

Начинай уже сегодня 📝

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3💯2
Завтра начну кодить 🛌

Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
4🌚3
Исправляем Mojibake и ошибки Unicode с помощью Python-библиотеки ftfy

Если вы когда-нибудь сталкивались с «битым» текстом вроде é вместо é или †вместо апострофа — то это и есть Mojibake. Он возникает, когда строка декодируется с использованием неправильной кодировки символов

На помощь приходит библиотека ftfy (Fixes Text For You). Её задача проста: автоматически исправлять самые распространённые ошибки Unicode и превращать «кашу из символов» в нормальный читаемый текст

Пример:
import ftfy

# Текст для очистки
garbled_texts = [
"The companyâ€s latest update was great.", # †должно быть ’
"Here is some text: único.", # ú должно быть ú
]

for text in garbled_texts:
fixed_text = ftfy.fix_text(text)
print(f"Garbled: {text}")
print(f"Fixed: {fixed_text}\n")

Вывод:
Garbled: The companyâ€s latest update was great.
Fixed: The company’s latest update was great.

Garbled: Here is some text: único.
Fixed: Here is some text: único.


✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Полезная находка «Project Euler» спортзал для мозга

Project Euler считается одним из культовых ресурсов для развития алгоритмического мышления: задачи там устроены так, что brute force обычно не помогает — нужно искать математические закономерности, оптимизации и изящные решения

Многие программисты используют его как «тренажёр» для ума и как способ познакомиться с новыми приёмами в математике, теории чисел и алгоритмах 💪

☝️ Ссылка источник

@Terminal_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍1
Звёздочка в распаковке и ловушка вложенного списка

Что выведет код 👀

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Варианты
Anonymous Quiz
37%
A
28%
B
20%
C
15%
D
Явная ошибка в Python: использование изменяемого аргумента по умолчанию

Не используйте изменяемые объекты в качестве значений по умолчанию. В Python значения аргументов по умолчанию вычисляются один раз при определении функции, а не при каждом её вызове

Если у вас есть аргумент вроде items=[], этот список будет общим для всех вызовов функции, и вы получите накапливающееся состояние, которого не ожидали:
# Изменяемый аргумент по умолчанию
def add_item(item, my_list=[]):
my_list.append(item)
return my_list

print(add_item(1)) # [1]
print(add_item(2)) # [1, 2]
print(add_item(3)) # [1, 2, 3]


Лучший способ использовать неизменяемый объект в качестве значения по умолчанию. Тогда при каждом вызове будет создаваться новый список:
from typing import Optional, List

def add_item(item: int, my_list: Optional[List[int]] = None) -> List[int]:
if my_list is None:
my_list = []
my_list.append(item)
return my_list


Значения по умолчанию вычисляются при определении функции, а не при её вызове. Если есть сомнения используйте None и создавайте изменяемый объект внутри функции👑

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
2