πŸ“ Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с интСрфСйсом Π½Π° Python: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ 🐍

Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с интСрфСйсом Π½Π° Python

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с интСрфСйсом Π½Π° Python, Π²Π°ΠΌ понадобится ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ для создания графичСского интСрфСйса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (Π“Π˜ΠŸ). Одна ΠΈΠ· самых популярных Π“Π˜ΠŸ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ для Python - PyQt.

Π’ΠΎΡ‚ простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ создаСт ΠΎΠΊΠ½ΠΎ с ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ с использованиСм PyQt:


import sys
from PyQt5.QtWidgets import QApplication, QMainWindow, QPushButton


def on_button_click():
    print("Кнопка Π½Π°ΠΆΠ°Ρ‚Π°!")


app = QApplication(sys.argv)
window = QMainWindow()
button = QPushButton("НаТми мСня", window)
button.clicked.connect(on_button_click)
window.setCentralWidget(button)
window.show()
sys.exit(app.exec_())

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ QApplication для создания прилоТСния, QMainWindow для создания Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°, QPushButton для создания ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ on_button_click для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ.

НадСюсь, этот ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с интСрфСйсом Π½Π° Python!

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с интСрфСйсом Π½Π° Python

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ с использованиСм Python - ΡƒΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ процСсс, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ прилоТСния ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Одним ΠΈΠ· Π²Π°ΠΆΠ½Ρ‹Ρ… аспСктов ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ являСтся Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΈ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятного интСрфСйса. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрим, ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с интСрфСйсом Π½Π° языкС Python ΠΈ прСдоставим ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠΎΠ΄Π°.

Π’Ρ‹Π±ΠΎΡ€ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для создания интСрфСйса

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ написанию ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с интСрфСйсом, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ для создания интСрфСйса. Π’ языкС Python сущСствуСт нСсколько популярных Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Tkinter, PyQT ΠΈ wxPython. Для этой ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΌΡ‹ Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ Tkinter, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° являСтся стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ ΠΈ доступна ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Установка Tkinter

ΠŸΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Tkinter Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° установлСна Π½Π° вашСм ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅. Для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° вСрсий Python, Tkinter ΡƒΠΆΠ΅ установлСна вмСстС с самим языком. Если ΠΎΠ½Π° Π½Π΅ установлСна, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π΅, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС:


    pip install tkinter
    

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠΊΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

ПослС установки Tkinter ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ написанию ΠΊΠΎΠ΄Π° для создания ΠΎΠΊΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ простой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, которая создаСт ΠΎΠΊΠ½ΠΎ с Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ "Моя ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°" ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌΠΈ 400x300 пиксСлСй:


    import tkinter as tk
    
    root = tk.Tk()
    root.title("Моя ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°")
    root.geometry("400x300")
    
    root.mainloop()
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ использовали ΠΌΠΎΠ΄ΡƒΠ»ΡŒ `tkinter`, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ `Tk`, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ ΠΎΠΊΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ установили Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΠΊΠ½Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° `title` ΠΈ Π·Π°Π΄Π°Π»ΠΈ Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° `geometry`. НаконСц, ΠΌΡ‹ Π²Ρ‹Π·Π²Π°Π»ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ `mainloop`, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ основной Ρ†ΠΈΠΊΠ» ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнтов интСрфСйса

ПослС создания ΠΎΠΊΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Π½Π΅Π³ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ элСмСнты интСрфСйса, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠΈ, тСкстовыС поля ΠΈ ΠΌΠ΅Ρ‚ΠΊΠΈ. Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΈ ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ:


    import tkinter as tk
    
    def say_hello():
        label.config(text="ΠŸΡ€ΠΈΠ²Π΅Ρ‚, ΠΌΠΈΡ€!")
    
    root = tk.Tk()
    root.title("Моя ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°")
    root.geometry("400x300")
    
    button = tk.Button(root, text="НаТми мСня", command=say_hello)
    button.pack()
    
    label = tk.Label(root, text="")
    label.pack()
    
    root.mainloop()
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ `say_hello`, которая измСняСт тСкст ΠΌΠ΅Ρ‚ΠΊΠΈ `label` ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ `button`. Кнопка ΠΈ ΠΌΠ΅Ρ‚ΠΊΠ° Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² ΠΎΠΊΠ½ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° `pack`, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ автоматичСски упорядочиваСт элСмСнты интСрфСйса. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΊΡƒ с пустым тСкстом, ΠΏΠΎΠΊΠ° ΠΊΠ½ΠΎΠΏΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΆΠ°Ρ‚Π°.

Π”Ρ€ΡƒΠ³ΠΈΠ΅ возмоТности Tkinter

Tkinter ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… возмоТностСй для создания Π±ΠΎΠ»Π΅Π΅ слоТных интСрфСйсов. НСкоторыС ΠΈΠ· Π½ΠΈΡ… Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя созданиС мСню, использованиС графичСских элСмСнтов, Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠ΅ΠΉ Tkinter для Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΊΠΎΠ΄Π°.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с интСрфСйсом Π½Π° языкС Python ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятным ΠΈ ΡƒΠ²Π»Π΅ΠΊΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ процСссом. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли основы создания интСрфСйса с использованиСм Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Tkinter. ΠœΡ‹ Π½Π°Ρ‡Π°Π»ΠΈ с установки Tkinter, Π·Π°Ρ‚Π΅ΠΌ написали ΠΊΠΎΠ΄ для создания ΠΎΠΊΠ½Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π² Π½Π΅Π³ΠΎ элСмСнты интСрфСйса. Tkinter ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ мноТСство Π΄Ρ€ΡƒΠ³ΠΈΡ… возмоТностСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для создания Π±ΠΎΠ»Π΅Π΅ слоТных ΠΈ интСрСсных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. ΠŸΡ€ΠΈΠ³Π»Π°ΡˆΠ°ΡŽ вас ΠΏΠΎΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒΡΡ, ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ свои собствСнныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ интСрфСйса Π½Π° Python!

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Π˜Π·ΡƒΡ‡Π΅Π½ΠΈΠ΅ TKinter Π·Π° 8 ΠΌΠΈΠ½ΡƒΡ‚ / Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° GUI ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° Python

Как Π² Python ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с интСрфСйсом?

Python ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΡ€Π°ΡΠΈΠ²ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΏΠΎΠ΄ ПК Π·Π° 10 ΠΌΠΈΠ½ΡƒΡ‚?

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

Как ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ условиС if Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅? πŸ›‘

✍️ Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ тСст Π½Π° Python: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…

πŸ” Как ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» txt Π² Python: простыС шаги ΠΈ совСты

πŸ“ Как Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ с интСрфСйсом Π½Π° Python: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ 🐍

πŸ” Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ мСньшС ΠΈΠ»ΠΈ Ρ€Π°Π²Π½ΠΎ Π² Python: простой ΠΈ понятный способ

πŸ”„ Как Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒΡΡ Π² Π½Π°Ρ‡Π°Π»ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅?

βœ‹ΠšΠ°ΠΊ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠΈΡ‚ΠΎΠ½ скрипт: лСгкая инструкция с ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΌΠΈ ΡˆΠ°Π³Π°ΠΌΠΈπŸ›‘