Справочник Программиста
6.29K subscribers
1.35K photos
386 videos
64 files
1.7K links
По рекламе - @it_start_programmer
Мои курсы - @courses_from_it_start_bot
Сайт - https://it-start.online/
YouTube - https://www.youtube.com/@it_start
Реклама на бирже - https://telega.in/c/programmersGuide_1

Предложить идею: @it_start_suggestion_bot
Download Telegram
range() - это функция для генерации последовательности целых чисел, по умолчанию начиная с 0 и заканчивая n,
где n не включено в сгенерированные числа. В основном используется в циклах for.
Синтаксис: range(start, stop, step)
start
— начало диапазона, по умолчанию — 0;
stop — конец диапазона;
step — шаг.
Помимо циклов с её помощью можно к примеру заполнить список, как показано на изображении.
🔥14❤‍🔥2👍1
Рассмотрим отличие операторов "==" и "is".

В Python оператор "==" используется для сравнения значений двух объектов (object equality), а оператор "is" используется для проверки идентичности двух объектов. Если использовать оператор "is", то проверяется, что обе переменные указывают на один и тот же объект в памяти.

Другими словами, оператор "==" сравнивает значения объектов, а оператор "is" сравнивает их адреса в памяти. Например, если создать два разных списка с одинаковыми значениями, то оператор "==" вернет True, а оператор "is" - False, потому что это разные объекты в памяти.
👍16🔥4
Справочник Программиста
https://www.youtube.com/watch?v=GUv0yf1NimI
Код из видео:

from rembg import remove
from PIL import Image

input_path = 'image.jpg'
output_path = 'image_output.png'

open_image = Image.open(input_path)
output = remove(open_image)

output.save(output_path)
👍9🔥3
Заполнение списка используя генератор.

Генераторы списков в Python - это удобный и компактный способ создания списков, который позволяет сократить количество кода, необходимого для создания списков с определенными значениями. Вместо использования цикла for и условных операторов, генераторы списков позволяют создавать списки на основе выражений, которые могут быть более простыми и лаконичными.

Синтаксис: list_generator = [элементы for i in range(количество элементов)]
👍8🔥2
Для тех кто ещё не знает, напоминаю, что викторины с вопросами по Python я теперь провожу тут - @python_quizzes_tasks
👍10
Метод enumerate() позволяет получить нумерованную последовательность элементов итерируемой коллекции.

Синтаксис: enumerate(iterable, start=0)

На изображении выше в первом примере показан перебор списка, при помощи метода enumerate().
В цикле i - принимает значение номера элемента, а num - значение элемента.
Во втором примере мы указали параметр start, и порядковые номера начались с 5.
👍10🔥2❤‍🔥1
Поиск в Google при помощи Python.

Для поиска в Google при помощи Python можно использовать библиотеку googlesearch.
Установка: pip install python-googlesearch

Для поиска в данной библиотеке есть функция search(). Её параметры:
query: текст, который является поисковым запросом.

tld: значение домена верхнего уровня, например co.in или com, который укажет, какой веб-сайт Google мы хотим использовать.

lang: язык поиска.

num: количество результатов, которые мы хотим найти.

start: указывает, с чего начинать результаты.Если нужны результаты с самого начала, то указываем 0.

stop: последний результат для извлечения. Чтобы поиск был бесконечным можно указать None.

pause: указывает количества секунд на паузу между последовательными HTTP-запросами, т.к. если мы наберем слишком много запросов, Google может заблокировать наш IP-адрес.

В приведенном на изображении примере вы можете увидеть ссылки, которые будут показаны в поиске Google, если вы откроете его и выполните поиск по запросу "Python"
👍16❤‍🔥5
Функция pprint() модуля pprint печатает отформатированное представление объекта с последующим переводом строки.

Синтаксис: pprint.pprint(object, indent=1, width=80, compact=False, sort_dicts=True)

Параметры:
object - объект форматирования;
indent - отступ последующего уровня вложенности;
width - ширина экрана печати;
compact - компактное форматирование;
sort_dicts - сортировка словаря перед форматированием.
🔥11👍3❤‍🔥1
Метод join().

Метод join() в Python используется для объединения элементов итерируемой коллекции в строку. Он принимает один аргумент - итерируемую коллекцию, элементы которой нужно объединить.

Разделитель для объединения элементов указывается в виде строки и передается методу join() через точку вызова на этой строке. Этот метод особенно удобен при работе с большим количеством элементов, когда необходимо быстро и удобно составить строку из всех элементов коллекции.

На изображении показаны примеры использования метода join().
🔥13❤‍🔥3
Справочник Программиста
https://www.youtube.com/watch?v=Z1KY44SoAOk
Код из видео:

import subprocess

try:
data = subprocess.check_output("netsh wlan show profiles").decode('cp866').split('\n')
profiles = [i.split(":")[1][1:-1] for i in data if "Все профили пользователей" in i]
pass_wifi = ''

for i in profiles:
results = subprocess.check_output(['netsh', 'wlan', 'show', 'profile', i, 'key=clear']).decode('cp866').split('\n')

for j in results:
if "Содержимое ключа" in j:
pass_wifi += f"{i} -- {j.split(':')[1][1:-1]}\n"

print(pass_wifi)
except Exception as ex:
print(f'Ошибка: {ex}')
👍10🔥7❤‍🔥2🤔2
Функции locals() и globals() в Python используются для доступа к переменным в текущей области видимости.

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

Функция locals() возвращает словарь локальных переменных. То есть этот словарь содержит все имена переменных, доступных только в текущем блоке кода.
❤‍🔥11👍2
Точка входа в Python - это место в программе, где начинается её выполнение.

В Python обычно точкой входа является блок кода, который находится внутри условной конструкции if __name__ == '__main__':, что позволяет отличить код, выполняющийся при импорте модуля, от кода, который будет выполнен при запуске скрипта напрямую.

Когда модуль импортируется в другой модуль, Python запускает код, находящийся в этом модуле, но не запускает код, который находится в блоке if __name__ == '__main__':.
Это позволяет использовать модуль как библиотеку, содержащую функции для переиспользования в других программах.

При запуске скрипта напрямую, блок кода, находящийся в if __name__ == '__main__':, будет выполнен, что позволит запустить скрипт как основную программу.
🔥7❤‍🔥4
Ключевое слово nonlocal в Python.

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

А ключевое слово global используется для указания на то, что переменная является глобальной, т.е. она определена в глобальном пространстве имен и доступна из любого места кода.

В примере на изображении определяется функция outer_func(), и вложенная функция inner_func(). Переменная x определена в функции outer_func(), и чтобы изменить её значение внутри функции inner_func() используется ключевое слово nonlocal, чтобы указать, что мы ссылаемся на переменную из окружающего пространства имен.

Если бы мы использовали ключевое слово global вместо nonlocal, то x рассматривался бы как глобальная переменная, и любые изменения, внесенные в нее внутри функции inner_func(), повлияли бы на глобальную переменную x.
❤‍🔥7👍1
Записывайтесь на курс от Хекслета, пройдите 5 бесплатных уроков профессии и получите скидку 10% на курс!

Мы заинтересованы в успешном трудоустройстве наших студентов — гарантируем стажировки от компаний-партнеров и участие в Карьерном треке. Вернем деньги, если после учебы не получилось найти работу🔝

На профессии «Python-разработчик» вы за 10 месяцев:

✔️ Научитесь работать с сетевыми запросами и овладеете навыком проектирования архитектуры приложений, сможете работать с чужим кодом и оформлять пул-реквесты в Open Source проектах.

✔️ Решите более 310 задач в браузере, создадите 4 проекта для портфолио на GitHub и выполните 150 тестовых заданий от наших партнёров.

Оцените формат и решите, стоит ли продолжать! Вводные ознакомительные курсы профессии доступны бесплатно сразу после регистрации!

Реклама. ООО «Хекслет Рус»
🤔4❤‍🔥2
Аннотации типов в Python.

Аннотации типов - это возможность указать типы параметров и возвращаемого значения у функции, класса или переменной.

Это позволяет лучше документировать код и упрощает его понимание другим разработчикам.

Например, чтобы указать, что функция печатает строку, можно использовать аннотацию типа как показано на изображении.

text: str указывает, что параметр text функции должен быть строкового типа, а -> None указывает, что функция не возвращает никакого значения.
❤‍🔥8🔥6👍1
Получение исходного кода объекта

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

В данном модуле есть метод getsource(), который возвращает исходный код объекта в виде строки.

Чтобы получить информацию о структуре и логике объектов, необходимо передать соответствующий объект в качестве аргумента функции.
Однако следует учесть, что встроенные функции в Python нельзя проинспектировать с помощью модуля inspect.
👍11❤‍🔥5