Python собеседования
1.95K subscribers
340 photos
453 links
Подготовка к собеседованиям на позицию Python-разработчик

Еще больше на сайте https://frontview-it.ru

Backend - @frontview_backend
Python работа - @frontview_python_vacancies
Все IT вакансии - @frontview_all_vacancies
Download Telegram
▶️Django предоставляет широкий набор готовых решений с богатым встроенным функционалом (таким как ORM), админку и средства аутентификации, что ускоряет разработку полнофункциональных приложений со строго определенной архитектурой.

▶️Flask отличается минималистичным подходом и гибкостью, позволяющей самостоятельно выбирать необходимые компоненты и легко масштабировать проект от простых микросервисов до более сложных систем.

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥31
Оптимизация кода — это процесс улучшения производительности программы, направленный на уменьшение времени выполнения и потребления ресурсов. Она необходима для повышения эффективности приложений, особенно при работе с большими объемами данных или в условиях ограниченных ресурсов.

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥1
🔥 **kwargs — это способ передачи переменного количества именованных аргументов в функцию. Он позволяет функции принимать любое количество аргументов в виде словаря, где ключи — это имена аргументов, а значения — их значения.


def print_info(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")

# Вызов функции с несколькими именованными аргументами
print_info(name="Alice", age=30, city="Moscow")


🔜 В этом примере функция print_info принимает произвольное количество именованных аргументов и выводит их в формате "ключ: значение". **kwargs полезен, когда заранее неизвестно, сколько именованных аргументов потребуется передать в функцию.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🔥1
Для объединения двух списков в Python можно использовать оператор +, метод extend() или функцию itertools.chain().

1️⃣ Оператор + создает новый список:

list1 = [1, 2, 3]
list2 = [4, 5, 6]
combined = list1 + list2
# combined: [1, 2, 3, 4, 5, 6]


2️⃣Метод extend() изменяет первый список:

list1 = [1, 2, 3]
list2 = [4, 5, 6]
list1.extend(list2)
# list1: [1, 2, 3, 4, 5, 6]


3️⃣itertools.chain() для ленивого объединения:

from itertools import chain
list1 = [1, 2, 3]
list2 = [4, 5, 6]
combined = list(chain(list1, list2))
# combined: [1, 2, 3, 4, 5, 6]


Каждый метод имеет свои особенности: + создает новый список, extend() изменяет существующий, а chain() полезен для работы с большими данными.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍202🤔2🔥1
Цикл for используется для итерации по элементам последовательности, такой как список, строка или диапазон, выполняя блок кода для каждого элемента. Он автоматически управляет индексами, что делает его удобным для работы с коллекциями данных без необходимости вручную отслеживать положение в последовательности.

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
Чтение JSON файла — это простая задача, благодаря встроенному модулю json.

👉 Для начала, необходимо открыть файл с помощью функции open(). Затем, используя json.load(), можно преобразовать содержимое файла в Python объект, например, словарь или список.

import json

# Открытие JSON файла в режиме чтения
with open('data.json', 'r') as file:
# Загрузка данных из файла в Python объект
data = json.load(file)

# Вывод данных для проверки
print(data)


👉 Этот код открывает файл data.json, читает его содержимое и преобразует в Python объект.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍22🔥2
Удаление элемента из словаря можно осуществить с помощью метода pop(), который удаляет элемент по ключу и возвращает его значение. Также можно использовать оператор del, чтобы удалить элемент по ключу без возврата значения.

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🔥21💯1
📍 Функция reduce() из модуля functools последовательно применяет указанную функцию к элементам последовательности, сводя её к единственному значению. В отличие от map(), которая применяет функцию к каждому элементу и возвращает новый итератор, и filter(), которая возвращает элементы, удовлетворяющие условию, reduce() возвращает одно итоговое значение.


from functools import reduce

# Функция суммирует все элементы списка
result = reduce(lambda x, y: x + y, [1, 2, 3, 4])

# Вывод результата
print(result) # 10


reduce() полезна для операций, таких как суммирование или нахождение произведения элементов.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥2
📌 Функция len() возвращает количество элементов в объекте, таком как строка, список, кортеж или словарь. Она используется для определения длины или размера коллекции.

▶️Пример использования со строкой:

# Создаем строку
text = "Hello, world!"

# Получаем длину строки
length = len(text) # Вернет 13


▶️Пример использования со списком:

# Создаем список
numbers = [1, 2, 3, 4, 5]

# Получаем количество элементов в списке
length = len(numbers) # Вернет 5


Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍171🔥1
Декоратор — это функция, которая принимает другую функцию в качестве аргумента и возвращает новую функцию с добавленным функционалом.

Простой декоратор можно определить с помощью функции, которая принимает функцию, выполняет дополнительные действия и возвращает функцию-обёртку.


def simple_decorator(func):
def wrapper():
print("До вызова функции")
func()
print("После вызова функции")
return wrapper

@simple_decorator
def say_hello():
print("Привет!")

say_hello()


В этом примере декоратор simple_decorator добавляет вывод текста до и после вызова функции say_hello.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥21
💥 Для работы с SQL в Python популярны библиотеки SQLAlchemy и psycopg2. SQLAlchemy предоставляет ORM для удобного взаимодействия с базами данных, а psycopg2 — это адаптер для PostgreSQL, обеспечивающий низкоуровневый доступ.

👉 Для NoSQL баз данных часто используются библиотеки PyMongo и Cassandra Driver. PyMongo позволяет работать с MongoDB, предоставляя простой интерфейс для выполнения операций с документами, а Cassandra Driver обеспечивает взаимодействие с Apache Cassandra, поддерживая асинхронные операции и кластеризацию.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥3🤔2👨‍💻1
В Python асинхронная функция определяется с помощью ключевого слова async def. Это позволяет функции выполнять асинхронные операции, такие как ожидание ввода-вывода, без блокировки выполнения других задач. Внутри асинхронной функции можно использовать await для вызова других асинхронных функций или корутин, что позволяет приостановить выполнение до завершения асинхронной операции.

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍121
📝 Паттерн Prototype позволяет создавать новые объекты путем копирования существующих. Это полезно, когда создание объекта "с нуля" является дорогостоящим. В Python для реализации этого паттерна можно использовать модуль copy.


import copy

class Prototype:
def __init__(self, value):
self.value = value

def clone(self):
# Создаем поверхностную копию объекта
return copy.copy(self)

# Пример использования
original = Prototype(42)
clone = original.clone()


В этом примере метод clone создает поверхностную копию объекта original, что позволяет быстро создавать новые объекты с теми же данными.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥4
Ключевое слово global используется для объявления переменной, определённой вне функции, доступной для изменения внутри функции. Это позволяет функции изменять значение глобальной переменной, а не создавать локальную переменную с тем же именем.

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥5
Для подключения к базе данных из Python часто используется библиотека sqlite3 для SQLite или psycopg2 для PostgreSQL.

▶️ Пример подключения к SQLite:

import sqlite3

# Устанавливаем соединение с базой данных
connection = sqlite3.connect('example.db')

# Создаем курсор для выполнения SQL-запросов
cursor = connection.cursor()

# Выполняем SQL-запрос
cursor.execute('SELECT * FROM users')

# Закрываем соединение
connection.close()


▶️ Для PostgreSQL можно использовать psycopg2:

import psycopg2

# Устанавливаем соединение с базой данных
connection = psycopg2.connect(
dbname='dbname',
user='user',
password='password',
host='localhost'
)

# Создаем курсор
cursor = connection.cursor()

# Выполняем SQL-запрос
cursor.execute('SELECT * FROM users')

# Закрываем соединение
connection.close()


Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
14👍114🤔1
Для чтения файла построчно в Python используется конструкция with open. Это гарантирует, что файл будет корректно закрыт после завершения работы.


# Открываем файл в режиме чтения
with open('example.txt', 'r') as file:
# Читаем файл построчно
for line in file:
# Обрабатываем каждую строку
print(line.strip()) # strip() удаляет лишние пробелы и символы новой строки


Этот метод эффективен для работы с большими файлами, так как загружает в память только одну строку за раз.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍202👀1
🔳 Для получения длины списка используется встроенная функция len(). Она принимает список в качестве аргумента и возвращает количество элементов в нём.


my_list = [1, 2, 3, 4, 5]
length = len(my_list) # Получение длины списка


🔲 В этом примере len(my_list) вернёт значение 5, так как в списке пять элементов.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20👀21
Модульное тестирование — это процесс проверки отдельных частей программы, называемых модулями, на корректность их работы. Оно необходимо для выявления ошибок на ранних этапах разработки, упрощения отладки и обеспечения стабильности кода при внесении изменений.

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🔥2👀1
▶️ Для импорта модуля используется ключевое слово import, за которым следует имя модуля. Если необходимо импортировать только определённые функции или классы из модуля, используется конструкция from module import name.


import math # Импорт всего модуля math

from math import sqrt # Импорт только функции sqrt из модуля math


▶️ В первом примере импортируется весь модуль math, а во втором — только функция sqrt из этого модуля.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥1👀1
💥 Функция input() используется для получения данных от пользователя через консоль. Она приостанавливает выполнение программы и ожидает ввода, который затем возвращается в виде строки.


# Запрашиваем у пользователя его имя
name = input("Введите ваше имя: ")

# Выводим приветствие
print("Привет, " + name + "!")


👉 В данном примере input() выводит сообщение "Введите ваше имя: ", ожидает ввода и сохраняет его в переменной name. Затем программа выводит приветствие с введённым именем.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Python собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍233🔥1