Python Hub - сборище Питонистов
Open in Telegram
Уголок счастья для любого питониста. Сотрудничество или заказы: @leshunist https://shcoder.dev - студия разработки ShcoderDevelopment https://t.me/pythonhub_chat - чат
Show more1 713
Subscribers
+124 hours
-107 days
-2030 days
Posts Archive
⏺ Функция eval() в Python
Функция
eval() принимает строку, содержащую код Python, и выполняет его. Результат выполнения кода возвращается в качестве результата функции:
x = eval("2 + 2")
print(x) # Output: 4
Функция eval() может принимать переменные и использовать их в выражении:
x = 2
y = 3
print(eval("x + y")) # Output: 5Разбор 👨💻
В переменную a заносим список из двух слов (разбили split'ом по пробелам) —> ['hello', 'world']
Далее берем a[0] —> 'hello'
Прибавляем a[1].capitalize() —> 'World'. (capitalize повышает регистр первой буквы, делая ее заглавной).
Не забываем соединить их и вывести —> helloWorld
Разбор 👨💻
Функция eval() получает на вход выражение, а возвращает результат этого выражения.
Сегодня постараюсь сделать пост на эту тему.
У нас идет вывод суммы а и b, а они были объявлены заранее обычным кодом.
a + b —> 5 + 20 —> 25
Разбор 👨💻
Аналогично прошлому разбору: создаем класс A, который наследуем от типа str.
Соответственно, при создании объекта передаем туда текст, который хотим, чтобы был в нашем объекте (он будет являться строкой).
В нашем нашем случае будет: Python top
p.s. Если бы мы при создании объекта не передали текст, то а объекте/строке a лежал бы пустой текст "".
⏺ Отрисовка виджетов Tkinter методами .place() и .pack()
➡️ Метод pack()
Метод pack() используется для организации виджетов в блоках перед размещением их в родительском виджете. Когда виджеты упакованы, они автоматически изменяют размеры, чтобы поместиться в доступном пространстве. Метод pack() принимает несколько параметров, таких как side, fill, expand и anchor, которые можно использовать для управления позиционированием виджетов.
Вот пример использования метода pack() для позиционирования виджета кнопки:
import tkinter as tk root = tk.Tk() button = tk.Button(root, text="Нажми меня!") button.pack(side="left", fill="both", expand=True, padx=10, pady=10) root.mainloop()В приведенном выше примере мы создаем виджет кнопки и упаковываем его слева в родительском виджете. Мы также устанавливаем параметры fill на both и expand на True, чтобы позволить виджету заполнить доступное пространство. Опции padx и pady добавляют отступы к виджету. ➡️ Метод place() Метод place() используется для позиционирования виджетов в конкретных координатах внутри родительского виджета. В отличие от pack(), метод place() не автоматически изменяет размеры виджетов, что может усложнить создание отзывчивых макетов. Метод place() принимает несколько параметров, таких как x, y, width, height и anchor, которые можно использовать для управления позиционированием виджетов. Вот пример использования метода place() для позиционирования виджета метки:
import tkinter as tk root = tk.Tk() label = tk.Label(root, text="Привет, мир!") label.place(x=50, y=50) root.mainloop()В приведенном выше примере мы создаем виджет метки и размещаем его в координатах (50, 50) внутри родительского виджета.
Разбор 👨💻
Унаследовали в класс A класс int.
Далее создали объект, в который ничего не передали.
Если бы мы передали туда какое-то число, то на выходе получили бы это число.
Но так как ничего не передали —> получили 0.
Разбор 👨💻
Говорим, что теперь тип данный str будем именовать еще и как a.
Дальше заводим переменную b со значением 27.
Ну и вывод a(3) + a(b) —> str(3) + str(b) —> '3' + '27' —> '327'
При сложении строк, они склеиваются.
Ответ: 327
🔔 Кто там не верил, что на Python можно писать игры?
📹 Опроверг это в видео с написанием Динозаврика Google Chrome на PYGAME с 0 до конца. Кому интересно, загляните и поддержите!📹
https://www.youtube.com/watch?v=h4UzbSyE5TY&ab_channel=Shcoder
Available now! Telegram Research 2025 — the year's key insights 
