Код: Выделить всё
from pynput.mouse import Controller
from rich.console import Console
console = Console()
def get_mouse_coordinates():
console.print("Welcome to mouse coordinate finder:\n")
console.print("\x1b[s", end="") # ANSI Escape code to save cursor position
previous_position = None
while True:
current_position = Controller().position # Current position of the mouse
if current_position != previous_position: # Only update the screen if the cursor is moved
x_coordinate, y_coordinate = current_position
console.print("\x1b[u", end="") # ANSI Escape code to restore cursor position
console.print(f"X Coordinate = {x_coordinate} \nY Coordinate = {y_coordinate} ")
previous_position = current_position
if __name__ == "__main__":
get_mouse_coordinates()
Я могу очистить весь экран и распечатать приветственное сообщение с помощью мыши координаты целиком, без необходимости очищать только координаты мыши при каждом перемещении курсора, но это сложно сделать, если предварительно нужно напечатать много строк. Итак, я хочу очистить здесь только часть экрана.
Мой код работает как надо, но когда я печатаю escape-коды ANSI для сохранения и восстановления положения экрана, чего нет предоставленная rich, escape-последовательность ANSI не включается, как когда я печатаю escape-код ANSI, предоставленный rich, и мне приходится включать ее вручную:
Код: Выделить всё
import os
os.system("")
Подробнее здесь: https://stackoverflow.com/questions/793 ... -in-python
Мобильная версия