サイモン効果(心理学実験):この時、私たちは結果を含むウィンドウでファイルをレコード生成することができfile_functionを追加します

サイモン効果のため、実際の実験
#は、私たちの必要性のあるライブラリをロード
インポートpygameのダウンロード
 インポートsysは
 インポートランダム
 から pygame.localsをインポートする * 被写体情報機能クリートデフsub_info():
    sub_idは(=入力を入力にあなたの番号をしてください:
    sub_nameサブ =入力(" あなたの名前の入力をしてください:" 
    sub_male =入力(" 入力してくださいあなたの男性:" 
    sub_age =入力(



あなたの年齢の入力をしてください:を返すsub_idはを、sub_nameサブは、sub_male、sub_age
 変数結果はタプルになる 
結果= sub_info()、リストにタプルを回す 
結果= リスト(結果)

pygame.init()
勝利 = pygameの.display.set_mode |((800600)、DOUBLEBUF HWSURFACE) =(200300  =(600300  =(255 、0、0)  =(0,0,255  = (0,0,0) 

待ち時間押されたキーの

デフwait4key(期間、KEY_LIST):
     「」」機能は、右キーを押して、被写体を待つことで、Experient社に\刚性続ける
対象キーを押し
期間を:キーを押すように対象待ちである時間、場合時間は、実験が\う、長すぎる
。自動に引き続き
KEY_LIST:被験者が実験を継続するために押す必要がキー、およびKEY_LISTは\必要があり
、このような[K_A、K_ /]などのリストである「」」
    
    fake_bool = 
    TIME_OUT = Falseの

    前にイベントを空にする
    pygame.event.clear() 
    
    タイムカウントのための使用 
    のstart_timeを=pygame.time.get_ticks() 
    
    は、被写体が右キーを押していない場合、彼はwhileループで継続それまでは、すべての時間が排出されます
    しばらく  ない(fake_bool またはTIME_OUT):
        END_TIME = pygame.time.get_ticks()
        期間が長すぎる場合、実験は続行されます
        場合のstart_time> - END_TIMEは:期間
            TIME_OUT = #は対象押して右キー場合、experimetが継続する
        ためにpygame.event.get():
             もし i.type == KEYDOWN:
                場合 i.key KEY_LIST:
                    関数の結果のために準備 
                    RESPONSE_TIME = pygame.time.get_ticks()
                    key_nameは = pygame.key.name(i.key)
                    右キーを持っている場合、ループが終了します 
                    fake_bool = 対象のキーを押した場合、最終的に、我々は時間を収集し、キーの名前になる
    場合:fake_bool
         リターンのstart_time、RESPONSE_TIME、key_nameは
     次の行の目的は、結果と同じままである
    戻りSTART_TIME、なし、なし
        
#1 10時間の実験

#はリストレコード生成
#1 Lは左平均、Rは右を意味し、REは赤色を意味し、BLカラーブルー平均 
LIS = [[ " L "" RE "" Zの" ]、
        [ " L "" BL "" / " ]、
        [ " R "" RE "" Z " ]、
        [R BLは/ ] 

#は、関数は1件の試験のRANにクリートストア我々の結果のためにリスト 
lis2を= []
 DEF one_trial_list(PARS):
パラメータはロケーションを含むリストである必要があり、色、刺激および「the」は変化してはならないパラメータの要素の配列の正しい応答」
    グローバルグローバルグローバルグローバルブルー
     グローバルブラック
     グローバル結果
    LOC、COL、RESS= 扁平部
     場合 LOC == " L " 
        POS = 場合 LOC == " R " 
        POS = 場合 COL == " BL "  = なら COL == " RE "  = 

    win.fill(黒)
    pygame.draw.circle(勝利、色、POS、 20 、0)
    pygame.display.flip()
    結果1= wait4keyは(2000 、[K_z、K_SLASH])
    は、リストにwait4key関数の結果である結果1を回す 
    結果1 = リスト(結果1)
    2つのリストを結合して、新しい変数に与える 
    結果2 =結果+ 結果1
     文字列にリストを回し、エンドにスペースを追加
    いくつかの要素がint型であるため、我々は文字列型に結果2の要素を有効にする必要があり 
    resul_map = マップ(STR、結果2)
    結果2 =  .join(resul_map)+ " \ nの" 印刷(結果2)2
     リターン結果2
    

4トレイル含まランダム当社LIS 
LIS1 = LIS * 2 
random.shuffle(LIS1) 

実行4件の試験をして、新しいファイルに私たちの結果を書き込む
#は、ファイルオープン 
、オープン(との" Cを:/ユーザー/ mike1 /デスクトップ/ simmon_resultを。 TXT " " W "エンコーディング= " UTF-8 " F1など)


    のために私はLIS1:
        result4 = one_trial_list(I)
        ファイルにすべての結果を書き込む
        )result4(f1.write 
        
        場合1つの後端塗りつぶしウィンドウ黒再び
         win.fill(黒)
        pygame.display.flip()
        pygame.time.delay( 500 
    pygame.quit()
sys.exit()
 

結果

 

 我々はまた、ウィンドウ内のファイルをレコード生成しました

 

おすすめ

転載: www.cnblogs.com/zijidefengge/p/11582478.html