fa
Feedback
Программистика

Программистика

کانال بسته

Лучший канал про python Ссылка для друга: https://t.me/+Ai6ughKtf5g2ZmFi Купить рекламу: https://telega.in/c/+Ai6ughKtf5g2ZmFi Админ: @JeyRahol По рекламе: @ReivuManager

نمایش بیشتر
5 596
مشترکین
-224 ساعت
+87 روز
-8530 روز
آرشیو پست ها
😎 PyLinux - канал для тех, кто изучает Python и хочет начать разбираться в Linux! ➡️ Почему не стоит упустить: - удобные инс
😎 PyLinux - канал для тех, кто изучает Python и хочет начать разбираться в Linux! ➡️ Почему не стоит упустить: - удобные инструменты Linux - библиотеки и полезные материалы по Python - bash скрипты и гайды - а также, многое другое! 🔥 Заходи прямо сейчас, чтобы не потерять - PyLinux!

🖼️ Библиотека Python: Altair Altair — это декларативная библиотека для создания статистических визуализаций в Python, основанная на спецификации Vega-Lite. Она позволяет легко создавать интерактивные и информативные графики с помощью простого и интуитивно понятного синтаксиса, что делает её идеальной для исследовательского анализа данных. ⚙️ Пример использования
import altair as alt
from vega_datasets import data

# Загрузка данных о машинах
cars = data.cars()

# Создание графика рассеяния, показывающего зависимость между весом автомобиля и его расходом топлива
scatter_plot = alt.Chart(cars).mark_circle(size=60).encode(
    x='Weight_in_lbs',
    y='Miles_per_Gallon',
    color='Origin',
    tooltip=['Name', 'Origin', 'Horsepower', 'Miles_per_Gallon']
).interactive().properties(
    title='Зависимость расхода топлива от веса автомобиля'
)

# Отображение графика
scatter_plot.display()
В этом примере создается интерактивный график рассеяния, где по оси X отложен вес автомобиля (Weight_in_lbs), а по оси Y — расход топлива (Miles_per_Gallon). Точки на графике окрашены в соответствии с происхождением автомобиля (Origin). При наведении курсора на точку, всплывающая подсказка покажет название автомобиля (Name), его происхождение (Origin), мощность (Horsepower) и расход топлива (Miles_per_Gallon)./ ✔️ Установка
pip install altair vega_datasets
Ссылка на документацию @programistica // #Library

💻 Происхождение термина "баг" Что-то захотелось мне немного окунутся в историю, так что давайте рассмотрим достаточно интересную тему: Происхождение термина "баг". Термин "баг" в контексте программирования имеет интересное и несколько анекдотичное происхождение. В 1947 году, когда компьютеры были огромными машинами, занимающими целые комнаты, инженеры столкнулись с необычной проблемой. В одном из первых компьютеров, Марке II, произошла неисправность, и после тщательного изучения выяснилось, что в реле компьютера застряла моль. Этот случай был зафиксирован в журнале инженеров, и рядом с записью была приклеена сама моль с пометкой "первый реальный случай обнаружения бага". Этот инцидент стал известным благодаря Грейс Хоппер, одной из первых женщин-программистов, которая работала над Марком II. Она и ее команда использовали термин "debugging" (отладка) для описания процесса удаления моли из компьютера и восстановления его работы. Хотя этот случай с молью стал популярным и часто упоминается как первый "баг", термин "баг" использовался в инженерии и ранее для обозначения механических неисправностей. Например, Томас Эдисон использовал этот термин в своих записях еще в 1878 году для описания проблем с телеграфными аппаратами. С тех пор термин "баг" стал широко использоваться в программировании и компьютерной инженерии для обозначения ошибок или неисправностей в программном обеспечении или аппаратуре. Процесс обнаружения и исправления таких ошибок называется "отладка" (debugging), что также произошло от этого исторического случая. @programistica // #article

👀 Книга: Создание видеоигр с помощью PyGame ⏺Настройка Python и Pygame ⏺Крестики-нолики в PyGame ⏺Использование классов в Py
👀 Книга: Создание видеоигр с помощью PyGame ⏺Настройка Python и Pygame ⏺Крестики-нолики в PyGame ⏺Использование классов в Pygame ⏺Рефакторинг игровой логики ⏺Пожиратель камней ⏺Космическое вторжение в PyGame И многое другое @programistica // #doc

БЕСПЛАТНЫЙ БОТ ДЛЯ ПОДГОТОВКИ К СОБЕСУ 15000 вопросов из СБЕР, ТИНЬКОФФ, ЯНДЕКС, МТС и GOOGLE 🌐PYTHON, JAVA, JS, C#, GO, KOT
БЕСПЛАТНЫЙ БОТ ДЛЯ ПОДГОТОВКИ К СОБЕСУ 15000 вопросов из СБЕР, ТИНЬКОФФ, ЯНДЕКС, МТС и GOOGLE 🌐PYTHON, JAVA, JS, C#, GO, KOTLIN 📗ФРЕЙМВОРКИ 📕ЯЗЫКИ 📘АЛГОРИТМЫ МЫ НЕ ЗАБЫЛИ ПРО СОФТ СКИЛЫ, ОНИ ТУТ

💻 Вопрос из собеседования: Как округлить число до трех десятичных знаков? Используйте функцию round(value, decimal_places):
💻 Вопрос из собеседования: Как округлить число до трех десятичных знаков? Используйте функцию round(value, decimal_places):
a = 5.12345
round(a,3)
#=> 5.123
Надеюсь это поможет вам пройти собеседование на желаемую вами работу, удачи🔥🔥🔥
@programistica // #jobs

🖼️ Библиотека Python: PyOpenGL PyOpenGL представляет собой кроссплатформенный интерфейс Python для OpenGL, который позволяет разработчикам создавать высокопроизводительные графические и визуализационные приложения с использованием стандартного API OpenGL. Эта библиотека обеспечивает прямой доступ к графическим функциям GPU, делая её идеальным выбором для разработки трехмерной графики, игр и научных визуализаций в Python. ⚙️ Пример использования
import glfw
from OpenGL.GL import *
import numpy as np

# Инициализация GLFW
if not glfw.init():
    raise Exception("GLFW не может быть инициализирован")

# Создание окна
window = glfw.create_window(640, 480, "PyOpenGL Demo", None, None)

if not window:
    glfw.terminate()
    raise Exception("Окно GLFW не может быть создано")

glfw.set_window_pos(window, 400, 200)

# Установка контекста
glfw.make_context_current(window)

# Определение вершин треугольника
vertices = np.array([-0.5, -0.5, 0.0,
                      0.5, -0.5, 0.0,
                      0.0,  0.5, 0.0], dtype=np.float32)

# Определение цветов вершин
colors = np.array([1.0, 0.0, 0.0,
                   0.0, 1.0, 0.0,
                   0.0, 0.0, 1.0], dtype=np.float32)

# Цикл отрисовки
while not glfw.window_should_close(window):
    glfw.poll_events()
    
    glClear(GL_COLOR_BUFFER_BIT)
    
    # Включение массива вершин
    glEnableClientState(GL_VERTEX_ARRAY)
    glVertexPointer(3, GL_FLOAT, 0, vertices)
    
    # Включение массива цветов
    glEnableClientState(GL_COLOR_ARRAY)
    glColorPointer(3, GL_FLOAT, 0, colors)
    
    # Отрисовка треугольника
    glDrawArrays(GL_TRIANGLES, 0, 3)
    
    # Отключение массивов вершин и цветов
    glDisableClientState(GL_VERTEX_ARRAY)
    glDisableClientState(GL_COLOR_ARRAY)
    
    glfw.swap_buffers(window)

# Завершение работы
glfw.terminate()
Этот код демонстрирует базовые принципы работы с PyOpenGL: инициализацию окна с помощью GLFW, установку контекста, определение вершин и цветов для треугольника, а также его отрисовку. Убедитесь, что у вас установлены все необходимые зависимости, чтобы код успешно выполнялся. ✔️ Установка
pip install PyOpenGL PyOpenGL_accelerate
Ссылка на документацию @programistica // #Library

💻 Вопрос из собеседования: Как объединить два массива? Помните, что массивы — это не списки. Это библиотека Numpy и здесь ра
💻 Вопрос из собеседования: Как объединить два массива? Помните, что массивы — это не списки. Это библиотека Numpy и здесь работает линейная алгебра. Для объединения массивов нужно использовать соответствующую функцию Numpy:
import numpy as np

a = np.array([1,2,3])
b = np.array([4,5,6])

np.concatenate((a,b))
#=> array([1, 2, 3, 4, 5, 6])
Надеюсь это поможет вам пройти собеседование на желаемую вами работу, удачи🔥🔥🔥
@programistica // #jobs

👀 Книга: Python. Непрерывная интеграция и доставка ⏺Автоматическое тестирование ⏺Модульное тестирование в Python ⏺Непрерывна
👀 Книга: Python. Непрерывная интеграция и доставка ⏺Автоматическое тестирование ⏺Модульное тестирование в Python ⏺Непрерывная интеграция с Jenkins ⏺Непрерывная доставка ⏺Сборка пакетов ⏺Распространение пакетов Debian ⏺Развертывание пакетов И многое другое @programistica // #doc

Попробуйте себя в роли специалиста по кибербезопасности на мини-курсе Skillbox. За 5 дней вы познакомитесь с профессией и нау
Попробуйте себя в роли специалиста по кибербезопасности на мини-курсе Skillbox. За 5 дней вы познакомитесь с профессией и научитесь защищать веб-серверы. Примерите роль хакера — перехватите пароль и подделаете письмо. А потом обезвредите ПО и поймёте, хотите ли развиваться дальше в этом направлении. Подробнее по ссылке: https://epic.st/XQd7QI?erid=2VtzqvG4pRW В программе мини-курса: — Основы профессии и прослушка трафика. — Как создавать и различать поддельные письма. — Как взломать сервер и обезвредить угрозу взлома. — Какие бывают методы защиты серверов. Чтобы выполнять практические задания, вам нужно установить VirtualBox — систему для запуска учебных виртуальных машин. Ссылку на установку пришлём после регистрации на мини-курс. На финальном вебинаре вы обсудите со спикером практические задания и сможете задать вопросы, возникшие в ходе курса. Спикер — Сергей Кручинин, проверяющий эксперт в Skillbox. Руководил проектами в Mail.ru Group, работал в WEBINAR.RU, ГК Astra Linux, МИФИ, МГТУ им. Н. Э. Баумана. Всех участников ждут бонусы: 5 полезных материалов о приёмах взлома, методах защиты и тестирования серверов, персональная карьерная консультация, сертификат на скидку 10 000 рублей и год бесплатного изучения английского языка. Первый бонус — сразу после регистрации! Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880

⚙️ Работа с файлами с использованием менеджера контекста Работа с файлами в Python часто включает в себя открытие файла, чтение из него или запись в него и, наконец, закрытие файла. Одним из наиболее эффективных и безопасных способов управления файлами является использование менеджера контекста с ключевым словом with. Этот подход не только упрощает код, но и автоматически заботится о закрытии файла после завершения работы, даже если в процессе выполнения возникли исключения. Принцип работы Менеджер контекста в Python реализован через протокол контекстного менеджера, который определяется методами __enter__ и __exit__. Когда выполнение кода входит в блок with, вызывается метод __enter__ объекта. После завершения выполнения кода в блоке with (или при возникновении исключения) автоматически вызывается метод __exit__, который и заботится о корректном закрытии файла или освобождении ресурсов. Примеры использования ⏺Запись в файл
with open('example.txt', 'w') as file:
    file.write('Привет, Python!')
В этом примере файл example.txt открывается для записи ('w'). Всё, что записывается в файл внутри блока with, будет автоматически сохранено, а файл закрыт после выхода из блока. ⏺Чтение из файла
with open('example.txt', 'r') as file:
    content = file.read()
    print(content)
Здесь файл example.txt открывается для чтения ('r'). Содержимое файла считывается и выводится на экран. После выхода из блока with файл автоматически закрывается, что предотвращает утечку ресурсов или возможные ошибки при попытке доступа к уже закрытому файлу. Преимущества использования менеджера контекста ⏺Автоматическое закрытие файла: Менеджер контекста автоматически закрывает файл по завершении работы с ним, что уменьшает риск ошибок и утечек ресурсов. ⏺Упрощение кода: Использование with делает код более читаемым и упрощает управление ресурсами. ⏺Обработка исключений: Менеджер контекста обеспечивает корректное закрытие файла даже в случае возникновения исключений внутри блока with. Использование менеджера контекста при работе с файлами в Python является лучшей практикой, обеспечивающей более безопасный и удобный способ управления файловыми ресурсами. @programistica // #article

💻 Вопрос из собеседования: В чем разница между глубокой и мелкой копиями? Обсудим это в контексте изменяемого объекта — спис
💻 Вопрос из собеседования: В чем разница между глубокой и мелкой копиями? Обсудим это в контексте изменяемого объекта — списка. Для неизменяемых объектов глубокое и мелкое (поверхностное) копирование обычно не отличаются. Рассмотрим три сценария. ⏺Поставьте ссылку на исходный объект. Она отсылает новое имя li2 к тому же месту в памяти, на которое указывает li1. Поэтому любое изменение в li1 также происходит с li2:
li1 = [['a'],['b'],['c']]
li2 = li1

li1.append(['d'])
print(li2)
#=> [['a'], ['b'], ['c'], ['d']]
⏺Создайте мелкую копию оригинала. Ее можно создать с помощью конструктора list() или mylist.copy(). Мелкая копия создает новый объект, но заполняет его ссылками на оригинал. Таким образом, добавление нового объекта в исходный список li3 не отразится в li4, а вот изменение объектов в li3 — отразится:
li3 = [['a'],['b'],['c']]
li4 = list(li3)

li3.append([4])
print(li4)
#=> [['a'], ['b'], ['c']]

li3[0][0] = ['X']
print(li4)
#=> [[['X']], ['b'], ['c']]
⏺Создайте глубокую копию. Это делается с помощью copy.deepcopy(). Оригинал и копия полностью независимы, а изменения в одном не оказывают никакого влияния на другой:
import copy

li5 = [['a'],['b'],['c']]
li6 = copy.deepcopy(li5)

li5.append([4])
li5[0][0] = ['X']
print(li6)
#=> [['a'], ['b'], ['c']]
Надеюсь это поможет вам пройти собеседование на желаемую вами работу, удачи🔥🔥🔥
@programistica // #jobs

👀 Книга: Безопасность веб-приложений на Python ⏺Хеширование ⏺Симметричное шифрование ⏺Асимметричное шифрование ⏺Сеанс HTTP ⏺
👀 Книга: Безопасность веб-приложений на Python ⏺Хеширование ⏺Симметричное шифрование ⏺Асимметричное шифрование ⏺Сеанс HTTP ⏺Противостояние атакам И многое другое @programistica // #doc

🖼️ Библиотека Python: Elasticsearch-dsl Elasticsearch-dsl - это высокоуровневая библиотека для работы с Elasticsearch на языке Python. Она предоставляет более удобный и питонический API для создания запросов и обработки ответов от Elasticsearch. ⚙️ Пример использования
from datetime import datetime
from elasticsearch_dsl import Document, Date, Integer, Keyword, Text
from elasticsearch_dsl.connections import connections

# Определение класса для документа
class Article(Document):
    title = Text(analyzer='snowball', fields={'raw': Keyword()})
    body = Text(analyzer='snowball')
    tags = Keyword()
    published_from = Date()
    lines = Integer()

    class Index:
        name = 'blog'
        settings = {
          "number_of_shards": 2,
        }

    def save(self, ** kwargs):
        self.lines = len(self.body.split())
        return super(Article, self).save(** kwargs)

# Создание соединения
connections.create_connection(hosts=['localhost'])

# Создание индекса
Article.init()

# Создание и сохранение статьи
article = Article(meta={'id': 42}, title='Hello world!', tags=['test'])
article.body = ''' looong text '''
article.published_from = datetime.now()
article.save()

# Применение поиска
s = Article.search().query('match', title='Hello')
response = s.execute()

for hit in response:
    print(hit.meta.score, hit.title)
В этом примере мы создаем класс Article для представления документа, который мы хотим сохранить в Elasticsearch. Затем мы создаем новый документ, сохраняем его и выполняем поиск по заголовку. ✔️ Установка
pip install elasticsearch-dsl
Ссылка на документацию @programistica // #Library

Разбираем как решать задачи на LeetCode ✅ Примеры решений ✅ Пояснения Выбери своё направление: 1. Python 2. JavaScript 3. Jav
Разбираем как решать задачи на LeetCode ✅ Примеры решений ✅ Пояснения Выбери своё направление: 1. Python 2. JavaScript 3. Java 4. C# 5. Golang 6. С/C++ 7. PHP 8. Kotlin 9. Swift

💻 Вопрос из собеседования: В чем разница между func и func()? Вопрос должен проверить ваше понимание, что все функции в Pyth
💻 Вопрос из собеседования: В чем разница между func и func()? Вопрос должен проверить ваше понимание, что все функции в Python также являются объектами:
def func():
    print('Im a function')

func
#=> function __main__.func>
func()    
#=> Im a function
func — это представляющий функцию объект, который можно назначить переменной или передать другой функции. Функция func() с круглыми скобками вызывает функцию и возвращает результат.
Надеюсь это поможет вам пройти собеседование на желаемую вами работу, удачи🔥🔥🔥
@programistica // #jobs

🖼️ Библиотека Python: SymPy SymPy - это библиотека Python для символьных математических вычислений. Она поддерживает символы, алгебраические выражения, дифференциальное и интегральное исчисление, решение уравнений и другие возможности символьной математики. ⚙️ Пример использования
from sympy import symbols, Eq, solve

# Определение символов
x = symbols('x')

# Определение уравнения
equation = Eq(x**2 - 5*x + 6, 0)

# Решение уравнения
solution = solve(equation, x)

print('Решения уравнения: ', solution)
В этом примере мы создаем символ x, определяем уравнение x**2 - 5*x + 6 = 0 и используем функцию solve для нахождения решений этого уравнения. Результат будет выведен на экран. ✔️ Установка
pip install sympy
Ссылка на документацию @programistica // #Library

⚙️ Работа с файлами с использованием менеджера контекста Работа с файлами в Python часто включает в себя открытие файла, чтение из него или запись в него и, наконец, закрытие файла. Одним из наиболее эффективных и безопасных способов управления файлами является использование менеджера контекста с ключевым словом with. Этот подход не только упрощает код, но и автоматически заботится о закрытии файла после завершения работы, даже если в процессе выполнения возникли исключения. Принцип работы Менеджер контекста в Python реализован через протокол контекстного менеджера, который определяется методами __enter__ и __exit__. Когда выполнение кода входит в блок with, вызывается метод __enter__ объекта. После завершения выполнения кода в блоке with (или при возникновении исключения) автоматически вызывается метод __exit__, который и заботится о корректном закрытии файла или освобождении ресурсов. Примеры использования ⏺Запись в файл
with open('example.txt', 'w') as file:
    file.write('Привет, Python!')
В этом примере файл example.txt открывается для записи ('w'). Всё, что записывается в файл внутри блока with, будет автоматически сохранено, а файл закрыт после выхода из блока. ⏺Чтение из файла
with open('example.txt', 'r') as file:
    content = file.read()
    print(content)
Здесь файл example.txt открывается для чтения ('r'). Содержимое файла считывается и выводится на экран. После выхода из блока with файл автоматически закрывается, что предотвращает утечку ресурсов или возможные ошибки при попытке доступа к уже закрытому файлу. Преимущества использования менеджера контекста ⏺Автоматическое закрытие файла: Менеджер контекста автоматически закрывает файл по завершении работы с ним, что уменьшает риск ошибок и утечек ресурсов. ⏺Упрощение кода: Использование with делает код более читаемым и упрощает управление ресурсами. ⏺Обработка исключений: Менеджер контекста обеспечивает корректное закрытие файла даже в случае возникновения исключений внутри блока with. Использование менеджера контекста при работе с файлами в Python является лучшей практикой, обеспечивающей более безопасный и удобный способ управления файловыми ресурсами.

На одних курсах далеко не уедешь! 🐱 Этот канал — настоящая имба для айтишника: • Как обойти блокировку DockerЧем заменить Slack, пока он не заблочил твой аккЛучший ИИ ассистент для написания кода Прокачай свои скиллы вместе с Git Разработчика

👀 Книга: Программируем с Minecraft ⏺Телепортация с помощью переменных ⏺Математик а, моментальное строительство и суперпрыжки
👀 Книга: Программируем с Minecraft ⏺Телепортация с помощью переменных ⏺Математик а, моментальное строительство и суперпрыжки ⏺Общаемся с помощью строк ⏺«Истина» и «ложь» булевых значений ⏺Конструкция if, душ и потайная дверь И многое другое @programistica // #doc