# Импорт модуля для выполнения системных команд
import subprocess
# Получаем метаданные о Wi-Fi профилях с помощью команды netsh
meta_data = subprocess.check_output(['netsh', 'wlan', 'show', 'profiles'])
# Декодируем полученные данные из байтов в строку UTF-8, заменяя ошибки символами \
data = meta_data.decode('utf-8', errors="backslashreplace")
# Разделяем данные по строкам
data = data.split('\n')
# Создаем список для хранения имен Wi-Fi профилей
profiles = []
# Перебираем каждую строку в данных
for line in data:
# Ищем строки, содержащие "All User Profile" (имена Wi-Fi сетей)
if "All User Profile" in line:
# Разделяем строку по двоеточию
parts = line.split(":")
# Берем вторую часть (имя профиля)
profile_name = parts[1]
# Удаляем лишние пробелы и кавычки вокруг имени
profile_name = profile_name.strip()[1:-1]
# Добавляем имя профиля в список
profiles.append(profile_name)
# Выводим заголовок таблицы
print("{:<30}| {:<}".format("Имя Wi-Fi", "Пароль"))
print("----------------------------------------------")
# Перебираем все найденные профили Wi-Fi
for profile in profiles:
try:
# Пытаемся получить информацию о профиле, включая пароль
results = subprocess.check_output(['netsh', 'wlan', 'show', 'profile', profile, 'key=clear'])
# Декодируем и разделяем результат по строкам
results = results.decode('utf-8', errors="backslashreplace")
results = results.split('\n')
# Ищем строку с содержимым ключа (паролем)
password_lines = [line.split(":")[1].strip()[1:-1] for line in results if "Key Content" in line]
# Если пароль найден, выводим его
try:
print("{:<30}| {:<}".format(profile, password_lines[0]))
# Если пароль не найден, выводим пустое поле
except IndexError:
print("{:<30}| {:<}".format(profile, ""))
# Обрабатываем ошибку, если команда не выполнилась
except subprocess.CalledProcessError:
print("{:<30}| {:<}".format(profile, "Ошибка получения данных"))
Важные нюансы:
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
👍2❤1
Он отлично справляется с такими задачами, как фильтрация, сортировка и агрегация данных.
Он предлагает библиотеки, такие как Pandas для обработки данных, NumPy для числовых операций и Scikit-Learn для машинного обучения.
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👀2👍1
Это полезно, потому что сразу видно, откуда берется функция, и это помогает избежать конфликтов имен.
Кроме того, становится менее понятно, откуда взята функция.
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍3
MarkItDown – это инструмент, который позволяет преобразовывать различные файлы, такие как PowerPoint, PDF, Word, Excel и другие, в формат Markdown.
Поддерживаемые форматы:🟢 PDF (.pdf)🟢 PowerPoint (.pptx)🟢 Word (.docx)🟢 Excel (.xlsx)🟢 Изображения (метаданные EXIF и технологии распознавания текста, OCR)🟢 Аудиофайлы (метаданные EXIF и транскрипция речи)🟢 HTML (включая специальную обработку для Википедии)🟢 Другие текстовые форматы (csv, json, xml и др.)
Установка библиотеки:
pip install markitdown
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤2🔥1
▶️ Многие приходят в IT с мыслью, что «писать код — это как собирать Лего», но сталкиваются с жёсткой реальностью: бесконечные ошибки, сложные концепции и задачи, которые кажутся нерешаемыми.▶️ Важно понять — это нормально.▶️ Даже senior-разработчики регулярно тратят часы на поиск одной пропущенной скобки или неправильного условия.
Как сохранять спокойствие
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤5
Использование метода get для доступа к элементам словаря — это хорошая практика, так как это позволяет избежать ошибки KeyError, если ключа не существует.
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8
Please open Telegram to view this post
VIEW IN TELEGRAM
😁8
Программа создает фиолетовые цифровые часы с белым текстом, которые обновляются каждую секунду.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤1
clock_pythontechcode.py
1.1 KB
Окно часов нельзя изменить в размере, что предотвращает проблемы с отображением.
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤1
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤1
Пример:
# 1. Десятичная → Двоичная
decimal_num = 10
binary_num = bin(decimal_num) # Префикс '0b' указывает на двоичную систему
print(binary_num) # Вывод: 0b1010 (не 'ob1010' с маленькой o)
# 2. Двоичная → Десятичная
binary_num = '1010'
decimal_num = int(binary_num, 2) # Второй аргумент 2 - основание системы
print(decimal_num) # Вывод: 10
# 3. Десятичная → Восьмеричная
decimal_num = 10
octal_num = oct(decimal_num) # Префикс '0o'
print(octal_num) # Вывод: 0o12 (не '0012')
# 4. Восьмеричная → Десятичная
octal_num = '12'
decimal_num = int(octal_num, 8)
print(decimal_num) # Вывод: 10
# 5. Десятичная → Шестнадцатеричная
decimal_num = 10
hex_num = hex(decimal_num) # Префикс '0x'
print(hex_num) # Вывод: 0xa
# 6. Шестнадцатеричная → Десятичная
hex_num = 'a' # Регистр букв неважен (A-F/a-f)
decimal_num = int(hex_num, 16)
print(decimal_num) # Вывод: 10
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤2
Рассчитывается сопротивление по формуле:
(первая цифра * 10 + вторая цифра) * (10^третья цифра).
# Список цветов резистора в порядке их числовых значений (0-9)
цвета = ["black", "brown", "red", "orange", "yellow", "green", "blue", "violet", "grey", "white"]
# Получаем числовые значения для каждой цветной полосы
n = цвета.index((input("Введите 1-й цвет: ")))
m = цвета.index((input("Введите 2-й цвет: ")))
p = цвета.index((input("Введите 3-й цвет: ")))
# Рассчитываем сопротивление
q = int(((n*10) + (m)) * (10**(p)))
z = q / 1000 # Переводим в килоомы
# Выводим результат
print("\nЗначение резистора:")
print(f"{q}Ω и в килоомах: {z}kΩ")
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥1
👍5
Мозг программиста как кэш - нужно прогревать постепенно!😎
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
😁8👍2
Patroni — это мощное и гибкое решение для управления высокодоступными кластерами PostgreSQL.
Он выполняет роль внешнего сервиса по отношению к PostgreSQL, действуя как менеджер кластера.
Установка библиотеки:
pip install patroni[dependencies]
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍2❤1
SQL JOIN — это инструмент для объединения данных из разных таблиц в реляционных базах данных.
Различные типы JOIN позволяют извлекать данные в зависимости от требований анализа.
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍1🔥1
🔜 Создание репозитория (init, add, commit, remote add).〰️ Работа с изменениями (status, add -p для интерактивного добавления).➖ История и анализ (log, blame для отслеживания правок).🔛 Управление ветками (branch, checkout).♾ Отмена действий (reset, revert).
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤2
Циклы в Python — это один из основных инструментов для выполнения повторяющихся операций. Python предлагает два основных типа циклов: for и while.
✄┈┈┈┈┈┈┈┈┈┈┈┈┈
Заметки программиста
«(!?»Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤2