Pythoner
7.21K subscribers
861 photos
28 videos
4 files
656 links
Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику.

Сотрудничество - @flattys
Цены - @serpent_media

Канал на бирже: https://telega.in/c/pythonercode
Download Telegram
➡️В Python можно найти индекс элемента в списке с помощью метода index(). Этот метод возвращает индекс первого вхождения указанного элемента в списке. Если элемент не найден, будет вызвано исключение ValueError.

⬆️В данном примере, мы находим индекс элемента 30 в списке my_list, который равен 2. Индексация элементов в Python начинается с 0.

➡️Если элемент не найден в списке, будет вызвано исключение ValueError:

my_list = [10, 20, 30, 40, 50]

index = my_list.index(60)

# Вызовет ошибку ValueError: 60 is not in list


➡️Чтобы избежать исключения в случае отсутствия элемента в списке, можно использовать конструкцию try-except:

try:
index = my_list.index(60)
print(index)
except ValueError:
print('Элемент не найден в списке')


➡️Таким образом, метод index() позволяет найти индекс первого вхождения элемента в списке и удобно работать с элементами в списке.

🐍Python'er
Please open Telegram to view this post
VIEW IN TELEGRAM
👍115🔥3
➡️Функция enumerate() в Python используется для перебора коллекций (списков, кортежей, строк и т. д.) одновременно с их индексами. Она возвращает объект, который генерирует кортежи, содержащие индекс элемента и сам элемент.

⬆️В этом примере index будет представлять индекс элемента в списке fruits, а fruit будет представлять сам элемент. Результат выполнения кода будет:

Index: 0, Fruit: apple
Index: 1, Fruit: banana
Index: 2, Fruit: cherry
Index: 3, Fruit: date

➡️Функция enumerate() часто используется в циклах for, когда нужно одновременно оперировать как элементами коллекции, так и их индексами. Она упрощает доступ к индексам элементов и повышает читаемость кода.

🐍Python'er
Please open Telegram to view this post
VIEW IN TELEGRAM
👍114🔥4
➡️Функция enumerate() в Python используется для обхода элементов в итерируемом объекте и возврата индекса элемента вместе с самим элементом.

➡️Для нахождения индексов минимального и максимального значений в списке можно использовать функцию enumerate() вместе с функцией min() и max().

⬆️В коде на фото:
- min(enumerate(my_list), key=lambda x: x[1]) находит элемент с минимальным значением и возвращает кортеж с его индексом и значением.
- max(enumerate(my_list), key=lambda x: x[1]) находит элемент с максимальным значением и возвращает кортеж с его индексом и значением.

После этого мы можем получить индексы минимального и максимального значений в списке.

🐍Python'er
Please open Telegram to view this post
VIEW IN TELEGRAM
👍84🔥3👏2
🤣22👍7😁4💯3
➡️Библиотека IceCream позволяет удобным образом выводить отладочную информацию в Python, облегчая процесс отладки кода. IceCream предоставляет функцию ic(), которая позволяет выводить значения переменных и выражений в определенной точке кода.

⬆️При запуске этого кода вы увидите вывод значений переменных a, b и result в консоли, что упрощает отладку и понимание того, что происходит в вашем коде в определенной точке.

➡️IceCream также предоставляет дополнительные функциональности, такие как использование ic.configureOutput(prefix='') для добавления префикса к выходным данным или использование собственных форматов вывода. Более подробную информацию о библиотеке IceCream и её возможностях можно найти в официальной документации.

🐍Python'er
Please open Telegram to view this post
VIEW IN TELEGRAM
👍116🔥4👌2
➡️Функция zip() в Python используется для параллельного объединения двух или более итерируемых объектов (например, списков, кортежей и др.). Она создает итератор, который возвращает кортежи, содержащие элементы из каждого из исходных итерируемых объектов.

⬆️Этот код создаст кортежи параллельно соответствующих элементов из list1 и list2 и выведет их:
(1, 'a')
(2, 'b')
(3, 'c')

💡Полезно также использовать функцию zip() в сочетании с циклами for для итерации по нескольким итерируемым объектам одновременно.

🐍Python'er
Please open Telegram to view this post
VIEW IN TELEGRAM
👍95🔥2👌2
🔎PEP 8 (Python Enhancement Proposal 8) - это официальный документ, в котором содержатся рекомендации по стилю кодирования на языке Python. Соблюдение стандартов PEP 8 помогает сделать код более читаемым, улучшить его поддерживаемость и сделать его более привлекательным для других разработчиков.

➡️Некоторые основные рекомендации PEP 8 включают в себя:

💬Использование отступов в 4 пробела (а не табуляции).
💬Использование строки длиной не более 79 символов.
💬Использование понятных и описательных имен для переменных, функций и классов.
💬Использование верхнего_регистра_с_подчеркиваниями для констант.
💬Избегание избыточных пробелов (например, вокруг операторов или после запятых).
💬Размещение импортов в начале файла.

➡️Следование стандартам PEP 8 не является обязательным, но рекомендуется для соблюдения общепринятых стандартов и улучшения качества кода. Для автоматической проверки соответствия кода стандартам PEP 8 можно использовать инструменты такие как flake8 или pylint

🐍Python'er
Please open Telegram to view this post
VIEW IN TELEGRAM
👍145🔥2👏1
➡️Метод format() в Python используется для форматирования строк путем вставки значений переменных внутрь другой строки. Он позволяет более удобно и гибко работать с шаблонами строк, подставляя нужные значения в определенные места.

➡️Синтаксис метода format():
formatted_string = "Шаблон строки с {} и {}".format(value1, value2)

где {} - место вставки значения, а value1, value2 - переменные, значения которых будут подставлены в строку.

⬆️Результат выполнения примера:
Привет, меня зовут Alice и мне 30 лет

➡️Метод format() также позволяет использовать именованные аргументы и пронумерованные плейсхолдеры для более сложного форматирования строк. Он предоставляет удобный и расширяемый способ работы с шаблонами строк в Python.

🐍Python'er
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍4🔥3
🤣19😁6🔥5👍31
➡️Метод tuple.count() в Python используется для подсчета количества вхождений определенного элемента в кортеже (tuple). Метод возвращает количество раз, которое заданный элемент встречается в кортеже.

⬆️В приведенном примере кортеж t содержит элементы (1, 2, 3, 4, 2, 3, 2, 2). Метод count(2) подсчитывает количество раз, которое число 2 встречается в кортеже t и возвращает значение 4, так как число 2 встречается 4 раза в кортеже.

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

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍115🔥3
➡️Метод dict.copy() в Python используется для создания копии словаря. Когда вы используете метод copy() для словаря, создается новый словарь, содержащий те же ключи и значения, что и исходный словарь.

⬆️Как видно из примера, метод copy() создает копию словаря, и изменения, внесенные в новую копию, не затрагивают исходный словарь. Таким образом, использование метода copy() очень удобно, когда вам нужно создать копию словаря для дальнейших действий без изменения исходного словаря.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍73🔥2👌1
➡️Функция string.capitalize() в Python используется для преобразования первой буквы строки в заглавную, а остальные буквы оставляются без изменений.

⬆️Этот код выведет "Hello world". Функция capitalize() удобна, если вам нужно форматировать строку так, чтобы первая буква была заглавной, например, при выводе заголовков или имен.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥53
🤣22👍3🔥3😁21
➡️Метод string.rfind() в Python используется для поиска последнего вхождения подстроки в строке. Метод возвращает индекс (позицию) последнего вхождения подстроки в строку, если подстрока не найдена, то метод возвращает -1.

⬆️В приведенном примере строка s содержит текст "hello world, hello". Метод rfind("hello") ищет последнее вхождение подстроки "hello" в строке s и возвращает индекс этого вхождения, который равен 13 (индексация начинается с нуля).

Если подстрока не найдена, метод возвращает -1:

s = "hello world"
index = s.rfind("test")

print(index) # -1


💡Метод string.rfind() полезен, когда вам нужно найти позицию последнего вхождения подстроки в строку, и может быть использован в различных сценариях программирования.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍54🔥2
🐍Python - это высокоуровневый язык программирования, который предлагает множество управляющих конструкций. Хотя в нем нет традиционного цикла "do while", как в других языках, цикл "while" в Python можно настроить для аналогичного поведения.

➡️Синтаксис традиционного цикла While

Цикл while в Python принимает форму while expression:, за которым следуют одно или несколько отступов в высказываниях. Цикл будет продолжать работать до тех пор, пока выражение больше не будет истинным. Например:

count = 0
while count < 5:
print(count)
count += 1 # Увеличиваем значение count на 1


В этом примере цикл будет продолжать выводить значение count, пока оно меньше 5.

➡️Эмуляция цикла Do While

Поскольку в Python нет традиционного цикла "do while", вы можете эмулировать его, используя цикл "while" с оператором "break". Вот пример:

while True:
print("Этот цикл выполнится хотя бы один раз")
if not condition:
break


В этом примере цикл выполнится хотя бы один раз, а затем продолжит работу, пока условие истинно.

➡️Практический пример цикла Do While

Допустим, вы хотите запросить у пользователя ввод, пока он не введет натуральное число. Вы могли бы использовать цикл "do while" так:

while True:
number = input("Введите натуральное число: ")
if number.isdigit():
break


В этом примере цикл будет продолжать запрашивать ввод пользователя, пока он не введет число.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍114🔥21
🤣23😁6👍41
Модуль schedule в Python позволяет создавать и управлять задачами, которые нужно выполнить по расписанию. Этот модуль удобен для автоматизации выполнения определенных действий в определенные моменты времени.

⬆️В этом примере создается функция my_task, которая выводит сообщение. Затем создается задача, которая будет выполняться каждую минуту. После этого запускается планировщик, который проверяет и запускает задачи по расписанию.

➡️Концепция работы:
schedule принимает: план выполнения (время или интервал) задания и имя функции для запуска с возможными параметрами.

Далее вызывается метод run_pending(), проверяющий планы выполнения и при необходимости выполняющий их.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍103🔥21
👍7
Что выдаст код выше?
Anonymous Quiz
7%
A B C
12%
A C
25%
B C
6%
A
1%
B
30%
C
19%
Error
👍101
Разбор

Цикл while должен был бы быть бесконечным, если бы его не прервал break, который находится внутри if'a (условие правдиво). Так как break стоит раньше, чем print('A'), то этот вывод не сработает.

Мы можем прикреплять else к циклам (while или for). Он будет срабатывать тогда, когда цикл не был прерван break конструкцией (а у нас был).
Таким образом ответом будет только вывод 'C'.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥6👏2
Counter - это класс из модуля collections в Python, который используется для подсчета хэшируемых объектов. Он представляет собой специальный вид словаря, который позволяет подсчитывать количество вхождений каждого уникального элемента в последовательности (списке, кортеже, строки и т. д.).

🔫Код на фото создаст объект Counter, который подсчитает количество вхождений каждого элемента в списке my_list. Результат будет представлен в виде словаря, где ключами будут уникальные элементы, а значениями - их количество.

💡Счетчик counter позволяет легко вычислить частоту. Он работает не только с числами, но и с любым итерируемыми объектами, такими как строки и списки.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍74🔥1