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

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

Канал на бирже: https://telega.in/c/pythonercode
Download Telegram
➡️Создание вложенных списков

Вложенный список - это список, содержащий другие списки в качестве его элементов. Создание вложенного списка в Python - это простой процесс. Вы просто создаете список, как обычно, но вместо того чтобы добавлять одиночные элементы, вы добавляете другие списки. Например, nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]].

➡️Добавление вложенного списка

Добавление нового вложенного списка в существующий список также является прямолинейным процессом. Вы просто используете метод .append() для добавления нового списка. Например, если вы хотите добавить новый список [10, 11, 12] в наш вложенный список, вы бы написали nested_list.append([10, 11, 12]).

➡️Доступ к элементам вложенных списков

Доступ к элементам вложенного списка осуществляется также, как и к элементам обычного списка, только с дополнительным индексированием для вложенных списков. Например, если вы хотите получить доступ к числу 5 в приведенном выше вложенном списке, вы бы использовали nested_list[1][1].

➡️Изменение элементов вложенных списков

Изменение элементов во вложенных списках также является прямолинейным процессом. Точно также, как вы бы изменили элемент в обычном списке, вы просто обращаетесь к нужному элементу с помощью индекса и присваиваете ему новое значение. Например, nested_list[2][2] = 10 заменит число 9 на число 10 в нашем вложенном списке.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍92🔥2
👍14🤣142😁2🔥1😢1
➡️pdb (Python Debugger) — это встроенный отладчик Python, который позволяет проводить отладку программы шаг за шагом, узнавать значения переменных, выполнять код пошагово, устанавливать точки останова и многое другое.

➡️Для использования pdb в программе нужно импортировать модуль pdb и вызвать функцию pdb.set_trace() в месте, где хотите установить точку останова. Когда программа дойдет до этой точки, выполнение приостановится, и вы сможете взаимодействовать с отладчиком.

➡️pdb предоставляет интерфейс командной строки, который можно использовать для взаимодействия с кодом Python во время его выполнения. Вы можете войти в режим pdb в своей программе Python, вставив следующую строку кода там, где вы хотите остановить отладчик.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍74🔥2
➡️Функция isupper()

Функция isupper() в Python возвращает True, если все символы в строке являются заглавными буквами. Если строка содержит хотя бы одну строчную букву или другой символ (цифру, специальный символ), функция возвращает False.

Пример:

print('HELLO'.isupper())  # Вывод: True
print('Hello'.isupper()) # Вывод: False


➡️Функция islower()

Функция islower() работает аналогично функции isupper(), но в обратном направлении. Она возвращает True, если все символы в строке являются строчными буквами. Если строка содержит хотя бы одну заглавную букву или другой символ, функция возвращает False.

Пример:

print('hello'.islower())  # Вывод: True
print('Hello'.islower()) # Вывод: False


➡️Применение функций isupper() и islower()

Функции isupper() и islower() могут быть полезными при валидации ввода пользователя или при обработке текстовых данных. Они позволяют программе реагировать на регистр символов в строке, что может быть полезно во множестве ситуаций. Например, при создании системы регистрации, где требуется, чтобы пароль содержал как минимум одну заглавную букву.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍114🔥1
➡️Рекурсия — это процесс вызова функции, который включает в себя вызов функции изнутри самой функции. То есть функция вызывает саму себя для выполнения дополнительной задачи, которая зависит от предыдущего вызова функции.

🔎Обратите внимание, что в рекурсивной функции должно быть условие выхода из цикла, чтобы избежать бесконечной рекурсии.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍5🔥1🤝1
🤣16👍6😁2
➡️Что такое функция .isprintable()?

Функция .isprintable() в Python - это встроенная функция, которая возвращает 'True', если все символы в строке печатаемые, и 'False', если хотя бы один символ в строке не печатаемый. Непечатаемые символы включают управляющие символы, такие как перевод строки или табуляция.

➡️Примеры использования функции .isprintable()

Рассмотрим пример использования функции .isprintable(). Допустим, у нас есть строка 'Hello, World!'. Если мы применим к этой строке функцию .isprintable(), результатом будет 'True', потому что все символы в этой строке являются печатаемыми. Однако, если бы у нас была строка 'Hello\nWorld!', результатом было бы 'False', потому что символ '\n' не является печатаемым.

Пример кода:

string1 = 'Hello, World!'
print(string1.isprintable()) # Вывод: True

string2 = 'Hello\\\nWorld!'
print(string2.isprintable()) # Вывод: False


➡️Как работает функция .isprintable()?

Функция .isprintable() проверяет каждый символ в строке, чтобы определить, является ли он печатаемым. Если все символы печатаемые, функция возвращает 'True'. Если хотя бы один символ не печатаемый, функция возвращает 'False'. Это делает ее прекрасным инструментом для быстрой проверки больших объемов данных.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍94🔥1
💡Функция .istitle() в Python используется для проверки, соответствует ли строка правилам заголовка. Другими словами, она проверяет, является ли первый символ каждого слова в строке заглавной буквой, а все остальные символы - строчными. Если строка соответствует этим правилам, функция возвращает True, в противном случае - False. Например, строка "Привет Мир" вернет True, в то время как строка "ПРИВЕТ МИР" или "привет мир" вернет False.

print("Привет Мир".istitle())  # Вывод: True
print("ПРИВЕТ МИР".istitle()) # Вывод: False
print("привет мир".istitle()) # Вывод: False



🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍133🔥2
💡Функция .isspace() в Python используется для проверки, являются ли все символы в строке символами пробела. Если строка содержит только символы пробела (такие как пробелы, табуляции или символы новой строки), функция возвращает True. Если в строке есть какой-либо непробельный символ, функция возвращает False. Например, строка " " (с пятью пробелами) вернет True, в то время как строка " Привет " вернет False, потому что она содержит непробельные символы.

print("     ".isspace())  # Вывод: True
print(" Привет ".isspace()) # Вывод: False


🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍103🔥1
Тестировщики тут? 😅
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣23👍143🔥3💯2
🐍Хотите стать востребованным специалистом в области программирования? Тогда курс "Python-разработчик" именно для вас!

Станьте бэкенд-разработчиком за 9 месяцев. Первая неделя обучения — бесплатно.

Преподаватели с многолетним опытом работы помогут вам освоить все необходимые знания и навыки. Так же будут рядом на протяжении всего обучения и даже поиска работы!

Не упустите возможность стать профессионалом! Залетайте на курс от Яндекса.
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍2💯2🔥1
➡️Использование библиотеки PyAutoGUI

PyAutoGUI - это модуль Python для программного управления мышью и клавиатурой. Он также позволяет делать скриншоты. Для создания скриншота вам просто нужно вызвать функцию screenshot(). Это простой и быстрый способ сделать скриншот, но у него есть ограничения. Например, он не может делать скриншоты отдельных окон.

Пример кода на PyAutoGUI:

import pyautogui

# Создание скриншота
screenshot = pyautogui.screenshot()

# Сохранение скриншота в файл
screenshot.save("screenshot.png")


➡️Использование библиотеки Pillow

Pillow - это форк оригинальной библиотеки PIL (Python Imaging Library). Он предоставляет широкий функционал для работы с изображениями, включая создание скриншотов. Для этого используется метод ImageGrab.grab(). Он позволяет делать скриншоты всего экрана или его отдельных областей, но, как и PyAutoGUI, не может делать скриншоты отдельных окон.

Пример кода на Pillow:

from PIL import ImageGrab

# Создание скриншота
screenshot = ImageGrab.grab()

# Сохранение скриншота в файл
screenshot.save("screenshot.png")


🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍2🔥1
👍5
Что выдаст код выше?
Anonymous Quiz
40%
1
13%
2
21%
3
13%
Error
13%
Ничего
👍4🔥3🤔3
Разбор

if not not not None.
Само по себе if None —> False.
Значит if not None —> True
Значит if not not None —> False
Значит if not not not None —> True

Таким образом видим, что результат первого if будет True —> выведется 1.

Так как дальше у нас связка не с if, а с elif, то остальные проверки даже не будут проверяться.

Ответ: 1
Please open Telegram to view this post
VIEW IN TELEGRAM
👍74🔥4
➡️Конструкция for else - это синтаксическая конструкция, которая позволяет выполнить блок кода else, если цикл for завершился нормально, т.е. без использования оператора break. Это может быть полезно в случаях, когда нужно выполнить некоторые действия после выполнения цикла, но только в том случае, если цикл отработал полностью.

Вот пример, который демонстрирует использование конструкции for else:

numbers = [1, 2, 3, 4, 5]
for number in numbers:
if number == 0:
break
else:
print("All numbers are non-zero")


⬆️В этом примере мы используем цикл for для прохода по списку чисел. Если в списке встречается число 0, то цикл завершается оператором break и блок кода else не выполняется. Если же все числа в списке не равны 0, то блок кода else выполнится и на экран будет выведено сообщение "All numbers are non-zero"

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍153🔥1
🤣18😁54🔥4👻1
➡️__init__

__init__
- это метод класса, который вызывается при создании нового объекта. Он используется для инициализации свойств объекта. Например, предположим, что у нас есть класс Person, который имеет свойства name и age. Мы можем инициализировать эти свойства в методе __init__ следующим образом:

class Person:
def __init__(self, name, age):
self.name = name
self.age = age


➡️ __str__

__str__
- это метод класса, который возвращает строковое представление объекта. Этот метод полезен при отладке и при выводе информации об объекте. Например, мы можем использовать метод __str__ для класса Person, чтобы получить строковое представление объекта:

class Person:
def __init__(self, name, age):
self.name = name
self.age = age

def __str__(self):
return f"{self.name} ({self.age})"


➡️ __len__

__len__
- это метод класса, который возвращает длину объекта. Этот метод полезен для работы с объектами, которые имеют определенную длину, например, списки или строки. Например, мы можем использовать метод __len__ для класса Person, чтобы получить количество символов в имени объекта:

class Person:
def __init__(self, name, age):
self.name = name
self.age = age

def __str__(self):
return f"{self.name} ({self.age})"

def __len__(self):
return len(self.name)


🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍145🔥2
➡️init метод

init - это конструктор экземпляра класса. Он вызывается после того, как объект был создан и память была выделена. Этот метод принимает только один аргумент, «self», который ссылается на экземпляр класса. В init мы обычно инициализируем атрибуты объекта, задавая им начальные значения.

class MyClass:
def __init__(self, arg1, arg2):
self.arg1 = arg1
self.arg2 = arg2


➡️new метод

new - это метод класса, который вызывается, когда мы создаем новый экземпляр класса. Он создает экземпляр объекта и может изменять его состояние перед тем, как вызвать метод init. Этот метод принимает один обязательный аргумент, «cls», который ссылается на класс, а также любое количество дополнительных аргументов. Обычно new используется в случаях, когда мы хотим изменить способ создания объекта, например, создать его из другого класса или изменить его состояние до вызова init.

class MyOtherClass:
def __new__(cls, arg1):
obj = super().__new__(cls)
obj.arg1 = arg1 * 2
return obj

def __init__(self, arg1):
self.arg1 = arg1


➡️Когда использовать каждый конструктор?

Как правило, мы используем init конструктор, чтобы инициализировать атрибуты объекта. В то же время new конструктор используется реже и обычно в случаях, когда мы хотим изменить способ создания объекта или изменить его состояние до вызова init. Например, мы можем использовать new для создания объекта из другого класса или изменения его состояния, основываясь на переданных аргументах.

🐍Pythoner
Please open Telegram to view this post
VIEW IN TELEGRAM
👍93🔥2🤝2
🖥SQLite - это легковесная, быстрая и надежная реляционная база данных, которая не требует какой-либо установки сервера. Она работает на всех основных операционных системах, включая Windows, macOS и Linux. SQLite может быть использован в Python для хранения данных в локальной базе данных.


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

➡️Использование SQLite в Python

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

➡️Преимущества SQLite в Python

Если вам нужно хранить данные в локальной базе данных, то SQLite может быть лучшим выбором для вас.

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