Just Python
10.2K subscribers
4.39K photos
11 videos
4.38K links
🐍Простое изучение Python.

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: telega.in/c/justpython_it

РКН: clck.ru/3MnbSc
Download Telegram
Неправильное копирование словарей и списков

Первое, что приходит в голову новичку, когда нужно сделать
копию словаря или списка — использовать оператор присваивания.
Проблема в том, что благодаря оператору присваивания теперь при изменении dict_b словарь dict_a тоже будет изменён.

#theory // just python | ChatGPT
Оператор «+» для конкатенации

«+» — простой и понятный для новичков оператор, но он не всегда является самым эффективным решением для конкатенации. Чем больше строк вам нужно соединить в одну, тем больше плюсов придётся добавить, а это засоряет код. Поэтому для конкатенации лучше использовать f-строки.

#theory // just python | ChatGPT
Злоупотребление импортом

Начинающие разработчики часто импортируют все имена из модулей.
Так делать не стоит, потому что модуль может содержать большое количество объектов, и импорт всего списка замедлит работу программы. Кроме того, иногда это приводит к дублированию определений идентификаторов, что усложняет чтение кода.

#theory // just python | ChatGPT
В чём разница между типами list и tuple?

В Python, список (list) и кортеж (tuple) являются двумя различными типами данных, которые предоставляют набор элементов в определенном порядке. Основная разница между ними заключается в том, что список может быть изменен (мутабельный тип), а кортеж является неизменяемым (иммутабельным типом).
То есть, после создания кортежа, вы не можете изменять его содержимое, добавлять или удалять элементы. Это делает кортежи более эффективными по памяти и дает гарантию того, что их содержимое не будет изменено случайно в коде. В то время как список может быть изменен, что было бы очень полезно, если вам нужна коллекция элементов, которые вы можете изменять по ходу выполнения кода.

#theory // just python | ChatGPT
Docstring

Docstring в Python — это строка документации, которая описывает, что делает функция, метод, модуль или класс Python. Данная строка располагается в начале определения объекта и используется для генерации документации автоматически. В других словах, docstring используется для создания описания API и содержит информацию о том, как использовать функцию или метод, какие аргументы они принимают и какие значения возвращают.

#theory // just python | ChatGPT
Как просмотреть методы объекта

Чтобы посмотреть все методы и атрибуты, связанные с определенным объектом в Python, можно использовать функцию dir(). Она принимает объект в виде аргумента и возвращает список имен всех атрибутов и методов объекта. Например, если нужно увидеть все методы и атрибуты, связанные с объектом my_list.

#theory // just python | ChatGPT
Что значит конструкция pass

В Python, pass является пустым оператором. Он используется там, где синтаксически требуется оператор, но никаких действий выполнять не нужно. Например, это может быть полезно при написании заглушки функции, которая будет реализована позже, или в цикле, который ничего не должен делать на данной итерации.

#theory // just python | ChatGPT
Может ли быть индекс списка отрицательным

Да, индекс списка может быть отрицательным. В таком случае, отрицательное значение считается от конца списка, где -1 соответствует последнему элементу, -2 — предпоследнему элементу и так далее.

Например, чтобы получить последний элемент списка my_list в Python, можно использовать следующую команду.

#theory // just python | ChatGPT
Что хранится в атрибуте dict

Атрибут dict содержит словарь, который хранит атрибуты объекта в виде пар ключ-значение. Этот словарь заполняется значениями при создании объекта и может быть изменен позже.

#theory // just python | ChatGPT
Что такое *args и **kwargs в определении функции

*args и **kwargs — это специальные параметры в Python, которые позволяют передавать переменное количество аргументов в функцию. Параметр *args используется для передачи переменного количества аргументов без ключевого слова. Он представляет собой кортеж из всех дополнительных аргументов, переданных функции. Параметр **kwargs используется для передачи переменного количества именованных аргументов. Он представляет собой словарь из всех дополнительных именованных аргументов, переданных функции.

#theory // just python | ChatGPT
Что такое globals() и locals()

globals() и locals() — это встроенные функции в Python, которые возвращают словари глобальных и локальных переменных соответственно.

globals() возвращает словарь, содержащий все глобальные переменные, доступные в текущей области видимости, включая встроенные переменные.

locals() возвращает словарь, содержащий все локальные переменные, определенные в текущей области видимости. Это включает аргументы функции и переменные, которым присвоено значение внутри функции.

#theory // just python | ChatGPT
Зачем в Python используется ключевое слово self

В Python ключевое слово self используется для обращения к текущему объекту класса. Оно передается как первый аргумент в методы класса и позволяет работать с атрибутами и методами объекта класса внутри этих методов.

#theory // just python | ChatGPT
Что такое декоратор и как написать собственный

Декоратор в Python — это функция, которая принимает другую функцию в качестве аргумента и расширяет ее функциональность без изменения ее кода. Декораторы могут использоваться для добавления логирования, проверки аутентификации, тайминга выполнения и других аспектов.

#theory // just python | ChatGPT
Как проверить файл .py на синтаксические ошибки, не запуская его

Утилита py_compile, позволит проверить файл .py на наличие синтаксических ошибок без его запуска.

Вы можете использовать командную строку или терминал для проверки файла .py на наличие синтаксических ошибок, не запуская его, используя флаг -m с модулем py_compile.

#theory // just python | ChatGPT
Для чего используется функция init

Функция init является конструктором класса, и она вызывается автоматически при создании нового экземпляра класса. Эта функция используется для инициализации атрибутов, которые будут принадлежать объектам, создаваемым с помощью класса.

Внутри функции init определяются атрибуты объекта, которые будут доступны через ссылку на экземпляр, на который ссылается переменная self.

#theory // just python | ChatGPT
Как перевести строку, содержащую двоичный код (1 и 0), в число

Для того, чтобы перевести строку, содержащую двоичный код, в целое число в Python, нужно воспользоваться функцией int(), передав ей вторым аргументом основание системы счисления — в данном случае 2.

#theory // just python | ChatGPT
Что может быть ключом в словаре

В Python ключом в словаре может быть любой неизменяемый объект, такой как число, строка или кортеж.

В этом примере ключами словаря являются число 1, строка ‘two’ и кортеж (3, 4). Однако, если вы попытаетесь использовать изменяемый объект, такой как список, как ключ словаря, вы получите TypeError.

#theory // just python | ChatGPT
Почему пустой список нельзя использовать как аргумент по умолчанию

Значения по умолчанию для аргументов функции вычисляются только один раз, когда функция определяется, а не каждый раз, когда она вызывается. Таким образом, если вы попытаетесь использовать изменяемый тип данных (например, список) как аргумент по умолчанию для функции, то каждый вызов функции, который изменяет это значение, также изменит значение по умолчанию для всех последующих вызовов функции. Это может привести к неожиданным поведениям.

#theory // just python | ChatGPT
Что такое слайс(slice)

Слайс (slice) — это способ извлечения определенной части последовательности (например, строки, списка, кортежа) с использованием индексации.

#theory // just python | ChatGPT
Как проверить, что один кортеж содержит все элементы другого кортежа

Для проверки того, содержит ли один кортеж все элементы другого кортежа в Python, можно воспользоваться встроенной функцией all(), передав ей выражение генератора списков, которое проверяет наличие каждого элемента из второго кортежа в первом кортеже.

#theory // just python | ChatGPT