Я использую шкалу оценки. Участники используют клавиши «t» и «b» для перемещения курсора по шкале. Каждое испытание в настоящее время длится 6 секунд. Если участник перестает нажимать «t» или «b» до 6 секунд, я хочу записать время последнего нажатия клавиши в моем файле журнала. Тем не менее, я не уверен, как проверить, какой keypress является последним. Я думал о регистрации RT последнего нажатия клавиши в списке, но код проверяет нажатия клавиш при каждом обновлении. Это то, что я до сих пор:время регистрации психопата, когда участник остановил движение курсора
trialNum=0
for eachPic in catPictures:
prevPos = 0
key=[]
b_list=[]
t_list=[]
timer = core.CountdownTimer(TrialDuration)
event.clearEvents() # get rid of other, unprocessed events
while timer.getTime() > 0:
for key in event.getKeys():
if key in ['escape']:
core.quit() # quit if they press escape
if key in ['b']:
# add keypress to list for each keypress. then move cursor proportionally to length of this list
b_list.append(key)
prevPos+=len(b_list)
if key in ['t']:
t_list.append(key)
prevPos-=len(t_list)
1. хороший вызов. 2. также хороший звонок. Я вставил из gedit, где все было отступом правильно. 3. Это потому, что он позволяет курсору двигаться быстрее, если они быстро нажимают много клавиш. в противном случае может потребоваться много времени, чтобы переместить курсор с одной стороны шкалы оценок на другую. – Maria
Я хочу напечатать (или записать) время, когда нажата последняя клавиша, а не последний ключ. Я не уверен, как это сделать, но, вероятно, это будет связано с установкой переменной равным 'clock.getTime()' при нажатии последней клавиши. Редактировать: Я заработал. благодаря! – Maria
Я обновил ответ, чтобы получить время реакции. Я также удалил две ненужные строки ('' b_list.append (key) '' и другой). И сделал пункт 5, что вы обязательно должны проверить другой ответ, который появился вчера :-) –