如何选择范围内的随机数 - +转换为ms

时间:2016-05-13 13:55:25

标签: python random

我试图弄清楚如何生成随机数,以便我的刺激在屏幕上出现1200到2200毫秒之间的随机时间。我已经发现random.randomint(1200,2200)会生成我正在寻找的号码。

然而,这给了我几秒钟的时间,而不是几毫秒。如果我将数字除以1000,我认为它仍然会给我1或2,因为它们是舍入的整数。

我也在寻找有关如何为键盘输入插入更好代码的一些指导。它最终会进行一次stroop测试。

from psychopy import visual, core
import random
import time
import datetime
import sys
from psychopy import event



file = open ("Test Output.txt", 'w')


win = visual.Window([800,800],monitor="testmonitor", units="deg")



for frameN in range(5):
    MyColor = random.choice(['red','blue','green','yellow'])
    Phrase = random.choice(["Red","Green", "Blue", "Yellow"])
    time = str(datetime.datetime.now())
    key = str(event.getKeys(keyList=['1','2','3','4','5'], ))
    pause = (random.randint(1200,2200)/1000)
    msg = visual.TextStim(win, text=Phrase,pos=[0,+1],color=MyColor)
    msg.draw()
    win.flip()
    core.wait(pause)

    data = "Color:"+ MyColor + "     " + "Time:" + time + "    " + "Text:"+ Phrase + key 

    file.write(data  + '\n')


file.close()

1 个答案:

答案 0 :(得分:1)

使用float division如下:

pause = random.randint(1200, 2200) / 1000.0 # time in seconds