PythonDev
74 subscribers
7 photos
1 video
18 files
60 links
Канал, где рассказывают по Python

Админ - @mistcoder, @ALRU8
Донат - https://t.me/send?start=IVawE0JR96oZ
Download Telegram
Channel created
🖥 Всем привет, этот канал создан для тех кто хочет знать Python на уровне выше 0.
Содержание:
📌 Хештеги канала:

#сервис - полезные
#бот - скрипты ботов
#обучение - расширение знаний
#файлы - работа с файлами
#скрипт - готовые скрипты
#книга - книги
#репозиторий - ссылки на GitHub и т.д.
#сеть - инфобез

✉️ поддержка и реклама - @mistcoder
Please open Telegram to view this post
VIEW IN TELEGRAM
4
F строка:
name = "John"
age = 30
greeting = f"Hello, my name is {name} and I am {age} years old."
print(greeting)

В этом примере мы используем f-строку для создания строки greeting, которая содержит переменные name и age. Фигурные скобки {} используются для указания мест, где должны быть вставлены значения переменных.

Выполнение этой программы выведет следующий результат:

Hello, my name is John and I am 30 years old.

F-строка позволяет создавать строки с вставленными значениями переменных в более удобном и readable виде, чем традиционные методы форматирования строк.

Вы можете использовать f-строку для форматирования строк с любыми типами данных, включая числа, строки, списки и т.д. Например:
numbers = [1, 2, 3, 4, 5]
message = f"The numbers are: {', '.join(map(str, numbers))}"
print(message)

В этом примере мы используем f-строку для создания строки message, которая содержит список чисел, преобразованный в строку с помощью метода join(). Выполнение этой программы выведет следующий результат:

The numbers are: 1, 2, 3, 4, 5

F-строка также поддерживает форматирование чисел с помощью спецификаторов формата, таких как :d для целых чисел или :f для чисел с плавающей точкой. Например:
pi = 3.14159
message = f"Pi is approximately {pi:.2f}"
print(message)

В этом примере мы используем f-строку для создания строки message, которая содержит значение числа pi с двумя знаками после запятой. Выполнение этой программы выведет следующий результат:

Pi is approximately 3.14

#обучение
🔥11
Подобие строк в Python

from difflib import SequenceMatcher
s = SequenceMatcher(lambda x: x==" ", "Мама мыла раму", "Мама мыла малину")
print(s.ratio())

# 0.8

Метод ratio() возвращает меру подобия последовательностей в виде числа с плавающей точкой в диапазоне от 0 до 1

#обучение
👍21
Иногда бывает нужно продолжить вывод текста, не начиная его с новой строки. В этом случае просто добавьте при выводе параметр end.
print('Первая часть текста.', end=' ') 
print('Вторая часть текста.')

Вывод:
Первая часть текста. Вторая часть текста.

#обучение
👍21
Конкатекация строк
letters = ['p', 'y', 't', 'h', 'o', 'n']
word = "".join(letters)
print(word)

Вывод:
python

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

Более эффективное решение этой задачи заключается в использовании функции join()

#обучение
👍21
This media is not supported in your browser
VIEW IN TELEGRAM
TheGamifAI — нейронка, которая может заменить целую команду гейм разработчиков.

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

#сервис
🔥21
Скрипт простого поисковика файлов на вашем пк
import os

B file_name = input('Введите название искомово файла:')

for root, dirs, files in os.walk('/'):
if file_name in files:
file_path = os.path.join(root,file_name)
print(f'Файл найден {file_path}')
break
else:
print('Файл не найден :(')


#скрипт
👍22
Оператор «+» для конкатенации

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

#неудобно
name = input("your name:")
print("Welcome, " + name + "!"

#удобно
name = input("your name:")
print(f'Welcome, {name}!')

#обучение
👍1🔥11
Как отформатировать многострочный вывод

Чтобы вывод напоминал аккуратную табличку, то при использовании F-строк добавьте интерполируемой переменной двоеточие и число, одинаковое для всех print(), например, 10. Это резервирует пространство из 10 символов

name1 = 'Александр'
name2 = 'Иван'
print(f'{name1:10}: заказчик')
print(f'{name2:10}: исполнитель')

#обучение
👍21
Злоупотребление импортом

Начинающие разработчики часто импортируют все имена из модулей.

Так делать не стоит, потому что модуль может содержать большое количество объектов, и импорт всего списка замедлит работу программы. 

#можно
from math import pi
print(pi)

#нельзя
import math
print(pi)

#обучение
👨‍💻22
random.choice
import random

list = (10, 20, 30, 40, 50)
random_element = random.choice(list)
print(random_element)

random.choice — это функция из модуля random, которая позволяет выбрать случайный элемент из последовательности, такой как список, кортеж или строка. Если же передать пустую последовательность, функция вызовет ошибку IndexError.

#обучение
🔥22
list.pop
list = [1, 2, 3, 4, 5]
elem = list.pop(2)
print(elem)
print(list)


Метод pop() используется для удаления и возврата элемента из списка. По умолчанию удаляется и возвращается последний элемент списка, но можно также указать индекс элемента, который нужно удалить и вернуть. Если список пуст, pop() вызовет исключение IndexError.

#обучение
👍22
Использование itertools для создания комбинаций

import itertools

items = ['A', 'B', 'C', 'D']
combinations = list(itertools.combinations(items, 3))
print(combinations)


Модуль itertools в Python предоставляет множество функций для работы с итераторами, позволяя эффективно создавать и манипулировать последовательностями. Одной из полезных функций этого модуля является itertools.combinations, которая позволяет легко создавать все возможные комбинации элементов из списка заданной длины.

#обучение

Использование функции itertools.combinations позволяет легко и эффективно создавать комбинации элементов из списка, упрощая решение задач, связанных с комбинаторикой и анализом данных.
👍22
Библиотека Progressbar

from progressbar import ProgressBar
import time

pbar = ProgressBar(maxval=5)
pbar.start()

for i in range(4):
pbar.update(i)
time.sleep(1)
pbar.finish()


Думали ли вы когда-нибудь над полоской прогресса? Иногда бывает полезно добавить в код отображение прогресса, чтобы пользователь не беспокоился, что программа не отвечает.

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

Все это очень интересно, но если мы начнем самостоятельно писать полосу прогресса, то отвлечемся от основного кода. К счастью, в python есть библиотека Progressbar, которая делает все за нас.

#обучение
👍22
Задаем ширину текста

import textwrap 
text = 'apple orange banana lemon mango grapefruit watermelon kiwi'
print(textwrap.fill(text, width = 24))


Метод fill() модуля textwrap разбивает text по строкам так, что каждая строка имеет не более width(в нашем случае 24) символов длиной.
Метод возвращает одну строку, содержащую заключенный абзац.

#обучение
🔥332👍1
statistics.median

import statistics

data = [1, 3, 5, 7, 9]
madian = statistics.median(data)
print(f"Медиана: {median}")


Функция median из модуля statistics используется для вычисления медианы списка чисел. Медиана — это элемент, который делит упорядоченный список пополам. Если список имеет нечетное количество элементов, то медиана — это значение в середине списка. Если список имеет четное количество элементов, то медиана — это среднее значение двух центральных элементов.🖥

#обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👨‍💻22👍1
Теперь тут есть комментарии!
👨‍💻3🔥22
list.extend

list = [1, 2, 3]
list.extend([4, 5, 6])
print(list)
# [1, 2, 3, 4, 5, 6]


list = [1, 2, 3]
for i in range(4, 7):
list.extend([i])
print(list)
# [1, 2, 3, 4, 5, 6]


Метод extend() используется для добавления всех элементов из итерируемого объекта (например, списка, кортежа или строки) в конец другого списка. Этот метод позволяет объединить два списка или добавить несколько элементов в один список за один вызов.

#обучение
🔥3👨‍💻22👍1