Psychopy中保存选择结果并展示选中内容的实现难题
新手友好的Psychopy决策任务后续实现指南
嘿,作为完全没接触过Python和Psychopy的新手,能走到循环关联Excel这一步已经很棒啦!我来帮你一步步搞定剩下的功能:
一、捕获选择并展示选中的图片
- 首先在你的试次循环里加一个键盘组件:
- 只勾选左箭头(left)和右箭头(right)作为响应键;
- 在"Data"标签页里,把按键结果保存为变量
resp_key(这个名字可以自己取,但要记牢)。
- 接着添加一个图片组件,用来展示被试选中的图:
- 假设你的Excel里左图路径存在
left_img列,右图在right_img列; - 在图片组件的"Image"输入框里,写动态判断的代码:
$left_img if resp_key == 'left' else right_img; - 把这个图片组件的开始时间设为键盘组件结束之后(比如键盘组件是"持续到按键",那图片组件就从"按键结束后0秒"开始,持续2-3秒就行)。
- 假设你的Excel里左图路径存在
二、添加选择原因的询问环节
- 在选中图片展示完成后,添加一个文本输入组件:
- 设置提示文本为
请输入你选择这张图片的原因:; - 在"Data"标签页里,把输入内容保存为变量
reason,这样最后导出数据时会把每个试次的原因一起存到Excel里; - 可以根据需求设置输入的最大字符数,或者允许任意长度输入。
- 设置提示文本为
三、新手避坑小贴士
- 所有新增的组件(键盘、选中图片、文本输入)都要放在试次循环内部,这样每个试次都会重复执行这些步骤;
- 检查Excel里的图片路径:最好用绝对路径(比如
C:/your_task/images/pic1.jpg),如果用相对路径,要确保Psychopy的工作目录和图片文件夹在同一个层级,或者在"实验设置"里指定资源文件夹; - 先跑1-2个试次测试:确认按键能被捕获、选中的图片正确显示、文本输入能正常保存,没问题再跑完整的15个试次;
- 如果你用的是Psychopy Builder(可视化界面),这些操作都不用写复杂代码,全靠组件参数设置就能完成,完全不用慌!
内容的提问来源于stack exchange,提问作者australopithecus




