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

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

Канал на бирже: https://telega.in/c/pythonercode
Download Telegram
Функция index в Python используется для нахождения индекса первого вхождения определенного элемента в последовательности.

➡️Работа функции index

Функция index принимает в качестве аргумента элемент, который мы хотим найти, и возвращает индекс первого вхождения этого элемента в списке. Если элемент не найден, функция вызывает исключение ValueError. Например, если у нас есть список чисел [1, 2, 3, 4, 5] и мы хотим найти индекс числа 3, мы можем использовать функцию index следующим образом:

numbers = [1, 2, 3, 4, 5]
index = numbers.index(3)
print(index)


⬆️В этом примере функция index вернет значение 2, так как число 3 находится на позиции с индексом 2 в списке.

➡️Обработка исключений

Когда мы используем функцию index, мы должны быть осторожны, потому что если элемент не найден в списке, это вызовет исключение ValueError. Чтобы избежать ошибок, мы можем использовать конструкцию try-except для обработки исключений. Например:

numbers = [1, 2, 3, 4, 5]
try:
index = numbers.index(6)
print(index)
except ValueError:
print("Элемент не найден в списке.")


⬆️В этом примере, если элемент 6 не найден в списке numbers, функция index вызовет исключение ValueError, и вместо того, чтобы прервать выполнение программы, мы перехватываем исключение и выводим сообщение "Элемент не найден в списке."

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥42
➡️Использование метода .count()

Метод .count() в Python используется для подсчета количества вхождений определенного элемента в строке, списке или кортеже. Синтаксис метода выглядит следующим образом:

<obj>.count(<value>)


⬆️где <obj> - объект, в котором мы ищем, а <value> - значение, которое мы хотим посчитать.

➡️Примеры использования метода .count()

Давайте рассмотрим несколько примеров использования метода .count().

➡️Подсчет количества символов в строке:

s = "Hello, World!"
count = s.count("o")
print(count) # Output: 2


➡️Подсчет количества элементов в списке:

numbers = [1, 2, 3, 4, 2, 1, 2]
count = numbers.count(2)
print(count) # Output: 3


🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍832🔥2
➡️PDF-файлы являются одним из наиболее удобных форматов для обмена документами. В Python существует несколько библиотек, позволяющих создавать и редактировать PDF-файлы. Одна из самых популярных библиотек для этой цели - PyPDF2.🛠 Чтобы начать работу с PyPDF2, необходимо установить эту библиотеку с помощью pip:
pip install PyPDF2


🔎Документация PyPDF2 доступна здесь, где вы можете найти подробные примеры и инструкции по использованию.

➡️Теперь, давайте создадим простой PDF-файл с текстом "Пример создания PDF в Python":
import PyPDF2

# Создание объекта PDF
pdf = PyPDF2.PdfFileWriter()

# Создание страницы и добавление текста
page = pdf.addPage()
page.mergePage(page)

text = "Пример создания PDF в Python"

# Добавление текста на страницу
page.drawText(100, 500, text)

# Сохранение PDF в файл
with open("example.pdf", "wb") as f:
pdf.write(f)

print("PDF файл успешно создан!")

⬆️Это простой пример создания PDF-файла с помощью Python и библиотеки PyPDF2. Однако, существует множество других библиотек, таких как reportlab или FPDF, предоставляющих более широкие возможности для создания и редактирования PDF-документов в Python.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍134🔥41
➡️"Чистая" функция - это функция, которая при выполнении одного и того же входного значения всегда возвращает одинаковый результат и не имеет побочных эффектов. То есть, она не влияет на состояние программы или внешние переменные. Результат работы "чистой" функции зависит только от переданных ей аргументов.

➡️Пример чистой функции

Давайте рассмотрим пример простой чистой функции на языке Python. Предположим, у нас есть функция double, которая удваивает переданное число:

def double(number):
return number * 2


⬆️Эта функция является "чистой", потому что она всегда возвращает удвоенное значение переданного числа и не имеет побочных эффектов. Независимо от контекста выполнения и внешних переменных, результат работы этой функции будет одинаковым при одинаковом входном значении.

➡️Пример нечистой функции

Рассмотрим теперь пример нечистой функции на языке Python. Предположим, у нас есть функция add_to_list, которая добавляет переданное значение в глобальный список:

my_list = []

def add_to_list(value):
my_list.append(value)


⬆️Эта функция не является "чистой", потому что она изменяет состояние программы путем добавления значения в глобальный список my_list. Результат работы этой функции зависит не только от переданного аргумента, но и от текущего состояния списка my_list.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍95🔥4
🔎Многие сталкиваются с проблемой, что кол очень долго выполняется, то бишь не оптимизирован. Сейчас мы это исправим.

➡️Для примера возьмём функцию вычисления последовательности Фибоначчи:
def fibonacci(n): 
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)

for i in range(50):
print(i, fibonacci(i))


⬆️Если сейчас мы запустим код, то он будет выполняться ну очень долго.

➡️Теперь давайте изучим код. Если подумать, то понятно что у нас много раз просчитывается одни и те же значения. Так давайте будем сохранять то что уже посчитали! Для этого можно использовать декоратор lru_cache из встроенного модуля functools:
from functools import lru_cache


@lru_cache
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci(n-1) + fibonacci(n-2)

for i in range(50):
print(i, fibonacci(i))


⬆️Так, данный код будет выполняться в рааазы быстрее.
Подробнее про этот декоратор можно почитать здесь.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍65🔥3
😁22🤣7🔥53👍3
🔎Иногда, при разработке программного обеспечения на Python, мы можем столкнуться с ситуациями, когда необходимо явно указать на наличие ошибки.

➡️Когда мы пишем программы, мы стараемся их делать максимально надежными и безопасными. Однако, иногда может возникнуть ситуация, когда мы хотим явно указать на наличие проблемы. Например, если в функции передаются некорректные аргументы или программа не может продолжить выполнение из-за некорректного состояния. В таких случаях мы можем создать исключение с помощью оператора raise, чтобы прервать нормальное выполнение программы и показать, что что-то пошло не так.

➡️Использование оператора raise

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

➡️Вот пример использования оператора raise:

def divide_numbers(a, b):
if b == 0:
raise ValueError("Делитель не может быть нулем")
return a / b

try:
result = divide_numbers(10, 0)
print("Результат:", result)
except ValueError as e:
print("Ошибка:", str(e))


⬆️В этом примере мы определяем функцию divide_numbers, которая делит одно число на другое. Если второе число равно нулю, мы вызываем исключение ValueError с сообщением "Делитель не может быть нулем". Затем мы обрабатываем это исключение с помощью блока try-except, чтобы поймать и обработать ошибку.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍135🔥2
➡️PyWebCopy - это инструмент на языке Python, который позволяет скачивать целые веб-сайты и их содержимое для локального использования.

🔎Основные возможности pywebcopy

PyWebCopy обладает несколькими основными функциями, которые делают его полезным инструментом для скачивания веб-сайтов:

1. Полное скачивание сайта: С помощью pywebcopy вы можете скачать целый веб-сайт, включая все его страницы, изображения, стили CSS и другие ресурсы. Это особенно полезно, когда требуется сохранить копию веб-сайта или работать с ним офлайн.

2. Обработка ссылок: PyWebCopy автоматически обрабатывает ссылки на другие страницы внутри веб-сайта и корректно настраивает их, чтобы они указывали на локально скачанные версии страниц. Это позволяет вам легко навигировать по веб-сайту и просматривать его содержимое в офлайн-режиме.

3. Поддержка фильтров: Вы можете настроить pywebcopy так, чтобы он скачивал только определенные типы файлов или игнорировал некоторые страницы. Это полезно, если вы хотите ограничить размер скачанного веб-сайта или избежать скачивания ненужной информации.

➡️Как использовать pywebcopy

Для использования pywebcopy вам потребуется установить его с помощью pip. После установки вы можете импортировать его в свой код Python и использовать.

Давайте рассмотрим простой пример использования pywebcopy для скачивания веб-сайта. Предположим, что у нас есть веб-сайт с URL-адресом "[https://www.example.com](https://www.example.com/)" и мы хотим скачать его для дальнейшего использования офлайн.

from pywebcopy import save_webpage

url = '<https://www.example.com>'
project_folder = 'example_website'

save_webpage(url, project_folder)


⬆️В этом примере мы использовали метод save_webpage из pywebcopy для скачивания веб-сайта по указанному URL и сохранения его в папке проекта "example_website". После выполнения этого кода, мы получим локальную копию веб-сайта, включая все его страницы и ресурсы.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍84🔥1
➡️Добавление цвета к текстовому выводу

Черно-белый текст в терминале может быть однообразным и трудным для чтения. Colorama предоставляет набор заранее определенных последовательностей ANSI-escape, которые можно использовать для изменения цвета переднего и заднего плана, а также применения стилей текста, таких как жирный, подчеркнутый и курсивный. Вот пример использования Colorama для вывода красного текста:

from colorama import Fore

print(Fore.RED + "Это красный текст" + Fore.RESET)


➡️Совместимость с различными терминалами

Colorama совместим с различными типами терминалов и операционными системами. Он автоматически определяет, поддерживает ли терминал ANSI-escape последовательности или нет, и включает изменение цвета и стиля соответственно. Это гарантирует правильное отображение цветного текста независимо от используемого терминала.

➡️Упрощение настройки вывода

Colorama предоставляет удобный API для установки цвета переднего и заднего плана, а также применения стилей текста. Вот пример использования Colorama для создания визуально привлекательного вывода:

from colorama import Fore, Back, Style

print(Fore.BLUE + "Синий текст на белом фоне" + Style.RESET_ALL)
print(Back.GREEN + "Зеленый фон" + Back.RESET)
print(Style.BRIGHT + "Яркий текст" + Style.RESET_ALL)


🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍75🔥2
➡️Библиотека Transliterate обеспечивает простой перевод текста между кириллицей и латиницей в Python. Установка производится командой pip install transliterate.

from transliterate import translit

text = "Привет, мир!"
transliterated_text = translit(text, 'ru', reversed=True)
print(transliterated_text)


➡️Это удобное средство при работе с многоязычными данными.
➡️Документация содержит дополнительные сведения и примеры использования.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍84🔥3
📦Установка пакета

Одной из первых команд, которую вы можете использовать с pip, является команда install. Она позволяет установить пакет или несколько пакетов из Python Package Index (PyPI). Например, чтобы установить пакет requests, вы можете использовать следующую команду:

pip install requests


Вы также можете указать конкретную версию пакета, добавив == после его имени. Например, чтобы установить версию 2.22.0 пакета requests, вы можете использовать следующую команду:

pip install requests==2.22.0


➡️Обновление пакета

Команда install также может использоваться для обновления уже установленных пакетов. Если у вас уже установлена более старая версия пакета, вы можете обновить ее до последней версии, используя следующую команду:

pip install --upgrade requests


⬆️Эта команда обновит пакет requests до последней доступной версии.

➡️Удаление пакета

Если вам больше не нужен определенный пакет, вы можете удалить его с помощью команды uninstall. Например, чтобы удалить пакет requests, вы можете использовать следующую команду:

pip uninstall requests


Вы также можете указать конкретную версию пакета, которую вы хотите удалить. Например, чтобы удалить версию 2.22.0 пакета requests, вы можете использовать следующую команду:

pip uninstall requests==2.22.0


🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍118🔥4
Вчера мы разбирали основные команды pip, если вы еще не видели, обязательно посмотрите.

➡️Команда pip show

Команда 'pip show' позволяет получить подробную информацию о конкретном пакете Python. Она показывает название пакета, его версию, автора, домашнюю страницу, зависимости и многое другое. Это очень удобно, когда вы хотите быстро узнать о пакете, с которым работаете, или проверить версию, чтобы убедиться, что у вас установлена самая новая.

Пример использования команды pip show:

pip show requests


➡️Команда pip search

Команда 'pip search' предоставляет возможность искать новые пакеты Python прямо из командной строки. Она позволяет разработчикам найти пакеты по ключевым словам, описанию или автору. Это может быть полезно, когда вы ищете новые инструменты или библиотеки для своего проекта и хотите найти что-то, что соответствует вашим потребностям.

Пример использования команды pip search:

pip search data analysis


➡️Команда pip freeze

Команда 'pip freeze' позволяет создать файл со списком всех установленных пакетов Python и их версиями. Это полезно, когда вы хотите поделиться своим проектом с другими разработчиками или восстановить его на другой машине. Просто запустите 'pip freeze > requirements.txt' и получите файл, который можно передать другим, чтобы они могли легко установить все необходимые зависимости.

Пример использования команды pip freeze:

pip freeze > requirements.txt


🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍64🔥3
🤣293😁3👍2🔥2
✈️HTML (HyperText Markup Language) и XML (eXtensible Markup Language) являются языками, которые используются для описания структуры и содержимого документов. Несмотря на то, что оба языка имеют сходства в своей синтаксисе и структуре, у них есть несколько важных различий.

➡️1. Цель использования

HTML был разработан для создания веб-страниц и отображения содержимого веб-браузерами. Он предоставляет стандартные элементы, такие как заголовки, абзацы которые используются для организации и представления информации на веб-страницах.

Пример HTML:

<!DOCTYPE html>
<html>
<head>
<title>Пример HTML</title>
</head>
<body>
<h1>Заголовок страницы</h1>
<p>Это параграф с текстом.</p>
<a href="<https://example.com>">Ссылка на пример</a>
</body>
</html>


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

Пример XML:

<book>
<title>Название книги</title>
<author>Имя автора</author>
<year>2021</year>
</book>


➡️2. Синтаксис и структура

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

Пример HTML:

<!DOCTYPE html>
<html>
<head>
<title>Пример HTML</title>
</head>
<body>
<h1>Заголовок страницы</h1>
<p>Это параграф с <strong>жирным текстом</strong>.</p>
<ul>
<li>Элемент списка 1</li>
<li>Элемент списка 2</li>
</ul>
</body>
</html>


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

Пример XML:

<book>
<title>Название книги</title>
<author>Имя автора</author>
<year>2021</year>
</book>


🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍7🔥6
🎶В Python существует множество инструментов для работы с аудио, и одним из самых популярных является модуль pg.mixer.Sound из библиотеки pygame.

➡️Создание объекта pg.mixer.Sound

Первым шагом для воспроизведения звуков с помощью pg.mixer.Sound является создание объекта звукового файла. Для этого необходимо указать путь к аудиофайлу, который мы хотим воспроизвести. Например, если у нас есть аудиофайл с названием "sound.wav", мы можем создать объект pg.mixer.Sound следующим образом:

import pygame as pg

pg.mixer.init()
sound = pg.mixer.Sound("sound.wav")


➡️Воспроизведение звука

После создания объекта звукового файла мы можем воспроизвести его с помощью метода play(). Например, чтобы воспроизвести звуковой файл "sound.wav", мы можем вызвать следующий код:

sound.play()


Кроме того, мы можем определить количество повторений воспроизведения звука, используя аргумент loop. Например, чтобы воспроизвести звуковой файл "sound.wav" 3 раза, мы можем использовать следующий код:

sound.play(loops=3)


➡️Остановка воспроизведения звука

Если в какой-то момент нам нужно остановить воспроизведение звука, мы можем вызвать метод stop(). Например, чтобы остановить воспроизведение звукового файла "sound.wav", мы можем использовать следующий код:

sound.stop()


🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍9🔥3
✈️Выключение компьютера может быть необходимым во многих ситуациях. Например, вы хотите, чтобы компьютер выключился после завершения какой-то задачи или просто хотите сэкономить энергию.

➡️Использование os module

Один из способов выключить компьютер при помощи Python - использовать модуль os. Этот модуль предоставляет функции для работы с операционной системой. Для выключения компьютера мы можем использовать функцию system с параметром "shutdown -s -t 0". Вот пример кода:

import os

os.system("shutdown -s -t 0")


⬆️Этот код выполнит команду "shutdown -s -t 0", которая выключит компьютер через 0 секунд. Вы можете изменить значение параметра -t в зависимости от того, через сколько секунд вы хотите выключить компьютер.

➡️Использование subprocess module

Еще один способ выключить компьютер при помощи Python - использовать модуль subprocess. Этот модуль предоставляет возможность запускать новые процессы, в том числе и команды операционной системы. Для выключения компьютера мы можем использовать функцию call с параметрами ["shutdown", "-s", "-t", "0"]. Вот пример кода:

import subprocess

subprocess.call(["shutdown", "-s", "-t", "0"])


⬆️Этот код выполнит команду "shutdown -s -t 0", которая выключит компьютер через 0 секунд.

➡️Использование win32api module (Windows only)

Если вы используете операционную систему Windows, еще один способ выключить компьютер при помощи Python - использовать модуль win32api. Этот модуль предоставляет функции для взаимодействия с операционной системой Windows. Для выключения компьютера мы можем использовать функцию ExitWindowsEx с параметром 0x00000008. Вот пример кода:

import win32api

win32api.ExitWindowsEx(0x00000008)


⬆️Этот код выполнит команду ExitWindowsEx(0x00000008), которая выключит компьютер.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍145🔥3
➡️Использование функции os.path.getsize()

Одним из способов узнать размер файла в Python является использование функции os.path.getsize(). Эта функция из модуля os.path возвращает размер файла в байтах. Вот пример, как можно использовать эту функцию:

import os

# Путь к файлу
file_path = 'path/to/file.txt'

# Получить размер файла
file_size = os.path.getsize(file_path)

print(f"Размер файла: {file_size} байт")


➡️Использование модуля pathlib

Другой способ узнать размер файла в Python - использовать модуль pathlib. Этот модуль предоставляет удобные методы для работы с путями к файлам и папкам. Чтобы узнать размер файла с помощью pathlib, можно использовать метод stat(), который возвращает объект os.stat_result, содержащий информацию о файле. Вот пример кода:

from pathlib import Path

# Путь к файлу
file_path = Path('path/to/file.txt')

# Получить размер файла
file_size = file_path.stat().st_size

print(f"Размер файла: {file_size} байт")


➡️Использование модуля os.stat()

Третий способ узнать размер файла - использовать модуль os.stat(). Этот модуль также предоставляет информацию о файле, включая его размер. Вот пример кода:

import os

# Путь к файлу
file_path = 'path/to/file.txt'

# Получить информацию о файле
file_info = os.stat(file_path)

# Получить размер файла
file_size = file_info.st_size

print(f"Размер файла: {file_size} байт")


🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍76🔥2🤔1
➡️Использование команды os.system()

Первый способ, который мы рассмотрим, - это использование встроенной функции Python os.system(). Эта функция позволяет выполнить команду операционной системы из Python-скрипта. Для запуска файла с помощью данного метода, нужно указать путь к файлу в качестве аргумента функции os.system(). Например, чтобы запустить файл script.py, находящийся в том же каталоге, что и Python-скрипт, можно использовать следующий код:

import os
os.system('python script.py')


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

➡️Использование модуля subprocess

Второй способ, который мы рассмотрим, - это использование модуля subprocess. Этот модуль предоставляет более гибкий и мощный способ запуска файлов с помощью Python. В отличие от os.system(), модуль subprocess позволяет получать вывод запущенного файла, а также передавать ему аргументы. Пример использования модуля subprocess для запуска файла script.py:

import subprocess
subprocess.run(['python', 'script.py'])


Кроме того, модуль subprocess предоставляет возможность управлять процессом запущенного файла, например, ожидать его завершения или передавать ввод.

➡️Использование модуля os.startfile()

Третий способ, который мы рассмотрим, - это использование функции os.startfile(). Эта функция доступна только на платформе Windows и позволяет запускать файлы, используя программу по умолчанию, связанную с данным типом файла. Пример использования функции os.startfile() для запуска файла script.py:

import os
os.startfile('script.py')


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

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍125🔥2