Top.Mail.Ru
Ответы
Аватар пользователя
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+2

Python прерывание выполнения этого кода, как сделать?

from pynput.mouse import Listener, Button
print("Начато определение позиций")
print("нажмите пкм для захватав точки на экране")
print("координаты сохранятся в листе ниже")

# Function called on a mouse click
def on_click(x, y, button, pressed):
# Check if the left button was pressed
if pressed and button == Button.right:
# Print the click coordinates
print(f'x={x} and y={y}')


# Initialize the Listener to monitor mouse clicks
with Listener(on_click=on_click) as listener:
listener.join()

По дате
По рейтингу
Аватар пользователя
Знаток
9мес
1234567891011121314151617181920212223242526
 from pynput.mouse import Listener, Button  
 
print("Начато определение позиций")  
print("нажмите пкм для захватав точки на экране")  
print("координаты сохранятся в листе ниже") 
def on_click(x, y, button, pressed):  
    if pressed and button == Button.right:  
        print(f'x={x} and y={y}') 

""" 
Внутри функции проверяется, что нажата именно правая кнопка мыши (Button.right) и что кнопка была нажата (а не отпущена). Если это условие выполняется, программа выводит координаты клика. 
""" 
 
try:  
    with Listener(on_click=on_click) as listener:  
        listener.join()  
except KeyboardInterrupt:  
    print("Выполнение кода прервано пользователем") 

""" 
) Listener(on_click=on_click): здесь создаётся объект слушателя, который будет отслеживать события мыши, а именно нажатия кнопок. В качестве параметра передаётся функция on_click, которая будет вызываться при каждом клике.  
 
2) listener.join(): этот метод заставляет программу "ожидать" события мыши. Фактически, программа не завершится до тех пор, пока слушатель не перестанет работать.  
 
3) try-except: блок try-except используется для перехвата прерывания программы с клавиатуры, например, при нажатии клавиш Ctrl+C. Если такое прерывание происходит, программа выводит сообщение "Выполнение кода прервано пользователем". 
"""