我正在使用基于 python 的 OpenSesame 來構建實驗。整個實驗運行良好,除了一件事。我撰寫了一個行內 python 腳本來為參與者提供有條件的聽覺反饋。在第一個條件下,如果 2 個變數的總和大于 0(作業正常),則應該出現“Sound_Win.wav”反饋。在第二種情況下,如果 2 個變數的總和小于 0(作業正常),則應該出現“Sound_Lose.wav”反饋。在第三個條件中,如果 2 個變數之和等于 0,則應該出現“Sound_No.wav”反饋。但是,使用以下代碼,第三個條件是播放“Sound_Lose.wav”反饋而不是“Sound_No.wav”反饋(錯誤)。任何幫助將不勝感激。
if [loss] [win] > 0:
src = pool['Sound_Win.wav']
my_sampler = Sampler(src, volume=1.0)
my_sampler.play()
if [loss] [win] < 0:
src = pool['Sound_Lose.wav']
my_sampler = Sampler(src, volume=1.0)
my_sampler.play()
elif [loss] [win] = 0:
src = pool['Sound_No.wav']
my_sampler = Sampler(src, volume=1.0)
my_sampler.play()
uj5u.com熱心網友回復:
如果我理解正確loss并且win只是整數,那么您的代碼應該是:
if loss win > 0:
src = pool['Sound_Win.wav']
my_sampler = Sampler(src, volume=1.0)
my_sampler.play()
elif loss win < 0:
src = pool['Sound_Lose.wav']
my_sampler = Sampler(src, volume=1.0)
my_sampler.play()
else:
src = pool['Sound_No.wav']
my_sampler = Sampler(src, volume=1.0)
my_sampler.play()
loss您只需將和相加win。此外,由于整數的定義非常緊密,因此使用這樣的if/elif/else鏈涵蓋了所有可能性。
uj5u.com熱心網友回復:
根據我對代碼的理解,不是寫第二個 if ,而是從一開始,按一個制表符在第一個 if 陳述句中縮進它,然??后按照第二個 if 陳述句撰寫 elif 陳述句,因為第二個只發生如果第一個不正確或錯誤!
如果我理解錯了,請告訴我!!我一定會期待的!!
謝謝??
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/442833.html
標籤:javascript Python python-3.x 朱庇特 芝麻开门
下一篇:將字符與串列單詞中的串列進行比較
