我怎么会有总时间Psychopy

How can I have the total time Psychopy

我在 Psychopy 上做了一个实验。我有指令,10 个不同的例程,然后是消息结束。

我能够知道每个例程所花费的所有时间,但我希望拥有 10 个例程的总时间,而不必在最后在我的 csv 文件中自行计算。

每次试验的持续时间代码。我把这一行放在每个例程中。

thisExp.addData('trial_duration1', t)

我试图创建一个变量总数并添加所有 trial_duration,但我的列在最后的 csv 文件中是空的。

谢谢!!

Psychopy 有一个内部时钟,它在实验开始时启动。您可以使用 core.monotonicClock.getTime() 读取时间。当您点击 "run" 时,此时钟的计时几乎立即开始,即在对话框之前,因此它不会读取自第一个例程开始以来的时间。但是,当您想要定义时间零时,您可以通过首先在代码组件中记录时钟时间来获得该持续时间:

time_zero = core.monotonicClock.getTime()

...然后记录经过的时间

thisExp.addData('cumulative_duration', core.monotonicClock.getTime() - time_zero)

请注意,如果您只想对特定循环执行此操作(例如,在第一个循环中定义 time_zero 并在最后一个循环中记录 cumulative_duration),则需要满足以下条件:

# If this is the first iteration of the loop (no matter the name of the loop)
if currentLoop.thisN == 0:
    time_zero = core.monotonicClock.getTime()