Переменные в python с pynput - PullRequest
       25

Переменные в python с pynput

0 голосов
/ 28 апреля 2020

Итак, я создаю программу, которая набирает число с помощью pynput, затем добавляет 1 к этому числу, нажимает ввод и продолжает работу. Однако, когда он достигает 10, программа перестает работать. Вот мой код:

from pynput.keyboard import Key, Controller
import time

keyboard = Controller()

#Example keys:
#keyboard.press('a')
#keyboard.release('a')

#Set the variables for the first number:
number = 8

#Define the press release button, for simple use. 
def press_release_char(char):
    keyboard.press(char)
    keyboard.release(char)

#Set start delay:
time.sleep(3)

while number<100:
    press_release_char(str(number))
    press_release_char(Key.enter)
    time.sleep(1)
    print(number)
    number += 1

Может ли кто-нибудь помочь мне с этим?

1 Ответ

2 голосов
/ 28 апреля 2020

Это потому, что строковое представление 10 на самом деле состоит из двух символов: 1 и затем 0, поэтому вы должны учитывать это соответствующим образом. По сути, вы должны l oop вместо строкового представления вашего number и отправить все цифры отдельно, поэтому замените ваш:

press_release_char(str(number))

на более общий c подход:

for c in str(number): press_release_char(c)

и вы должны быть хороши для любого числа, независимо от того, сколько цифр у вас есть. Фактически тот же самый l oop может использоваться для отправки любой последовательности символов.

...