2015-05-21 2 views
0

Я использую эксперимент с использованием психопата для моей бакалаврской диссертации. Эксперимент был создан в прошлом году (08/2014) с использованием BuilderView. После обновления к новейшей версии психопата 1.82.01 код, который я использовал, больше не работает. Код отлично функционировал unter 1.81.03. Цель этого кода - запомнить первоначальный рейтинг и использовать этот рейтинг в качестве отправной точки для второго рейтинга. Это означает, что в новой рутине вы можете настроить свой первоначальный рейтинг. код я использую это:Психопатия: обновление - код необходимо исправить

Начало Рутинное: rating3.setMarkerPos (rating.getRating())

Кто-нибудь знает, как исправить этот код? Спасибо большое! Julie

+0

Что вы имеете в виду под «не работает»? Пожалуйста, включите сообщение об ошибке или опишите неправильное поведение, которое вы видите. – dacoinminster

+0

Файл «N: \ ....», строка 1292, in win.flip() Файл «C: \ Program Files (x86) \ PsychoPy2 \ lib \ site-packages \ psychopy-1.82.01-py2 .7egg \ psychopy \ visual \ window.py ", строка 539, в flip thisStim.draw() Файл" C: \ Program Files (x86) \ PsychoPy2 \ lib \ site-packages \ psychopy-1.82.01- py2.7.egg \ psychopy \ visual \ ratingscale.py ", строка 981, в розыгрыше ratio = self.markerPlacedAt/self.tickMarks ТипError: неподдерживаемый тип операндов для /: 'NoneType' и 'float' – Identicon

ответ

0

Не знаете, что изменилось с новой версией. Для меня ваш общий подход в основном работает (без сбоев, но не всегда в правильной позиции).

Я использовал две рейтинговые шкалы по умолчанию в двух разных режимах. Второй имеет компонент кода, и его важно, чтобы компонент кода пришел после компонента рейтинга внутри этой процедуры (появляясь ниже на экране в панели управления). Код в Begin рутины:

rating_2.setMarkerPos(rating.getRating() - rating.low) 

сообщение об ошибке вы получаете почти наверняка потому, что rating.getRating() возвращался None. Это может произойти, если не было ответа (например, если allowSkip был True, и участник пропустил или рейтинг не был присвоен, и ваш код продолжался по какой-либо другой причине, возможно, тайм-аут).

Вычитание rating.low только необходимо, если ваши рейтинги не начинаются с 0.

+0

Спасибо огромное! Я исправил рейтинг. – Identicon

+0

Прохладный. Примите ответ и проголосуйте за него – jrgray

Смежные вопросы