Поставил перед собой такую задачу. На питоне при помощи PyQt5 создал программу с GUI. В данной программе присутствует кнопка, при нажатии на которую в Serial отправляются данные из файла построчно. При этом, если очередная строка начинается с символа “z”, необходимо создать задержку отправления сообщения, и эта задержка должна быть длиной в цифру, идущую после “z”, а потом продолжить отправление следующих строк.
содержимое файла command.txt:
a150;
b50;
c0;
z900;
a180;
b0;
c180;
z1500;
a0;
b0;
z150;

[code python]
# Функция чтения команд из файла
def text_command():
file = open('command.txt')
commands = file.readlines()
for line in commands:
if line[0] == 'z':
line = line.replace('z','')
line = line.replace(';', '')
line = line.replace('\n', '')
QtCore.QTimer.singleShot(int(line), text_command)
else:
line = line.replace('\n', '')
serial.writeData(str(line).encode())
file.close
ui.pushButton.clicked.connect(text_command)
[/code]


Эта функция отправляет данные в сериал, а их, в сою очередь, принимает ардуинка, и в зависимости от первого символа устанавливает определенный сервопривод в указанный угол.
При вызове моей функции, к сожалению, я не получаю нужный мне результат, отправка строк происходит без задержки.
Как мне организовать подобную задержку?

Первый мой вопрос на форуме в процессе обучения, если оформил неправильно или непонятно объяснил свою задачу - исправлюсь.

ОС Windows7
Python 3.8
PyQt5 5.15.6