2017-09-17 57 views
1

我想通過編碼顯示在Pyschopy日本的一些句子,我用這樣的代碼:Psychopy:如何顯示日語?

from Psychopy import visual,core 

win=visual.Window([400,400]) 

message=visual.TextStim(win,text='先生を呼んだ學生') 

message=setAutoDraw(True) 

win.flip() 

和迴應是,「SyntaxError: Non-ASCII character '\xe5' in file D:\用戶目錄\我的文檔\untitled.py on line 5, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details」。

我想使用TextStim呈現日語是非法的,但我在構建器視圖中看到它可以這樣做。所以我想知道是否有某種方法可以讓我通過編碼來顯示日語?

+2

看來你使用的是Python 2;升級到Python 3,文本處理將會更好。 – Ryan

+0

您是否嘗試過閱讀那篇文章? –

+0

您的意思是「http://python.org/dev/peps/pep-0263/」上的文章。我讀了它,現在正試圖爲Janpanese聲明一個編碼名稱。並且我還跟蹤了builderview的腳本,並發現了這個:#!/ usr/bin/envpython2# - * - coding:utf-8- *我試圖在我的代碼中使用它,但它不起作用。 – Heaven

回答

1

PsychoPy不久將爲Python 3添加beta版支持,這將改進unicode處理,但是就時間而言,即使在當前的Python 2.7下也應該可以運行它。這種調整對您的代碼工作對我來說:

#!/usr/bin/env python2 
# -*- coding: utf-8 -*- 

from psychopy import visual,core 

win=visual.Window([400,400]) 

message = visual.TextStim(win, text = u'先生を呼んだ學生') 

message.draw() 

win.flip() 

core.wait(5) 

即顯式聲明的UTF-8編碼的包頭,而且先於你的字符串字面量u,表明它是一個Unicode字符串(這一步終究不會在Python 3中我認爲是必需的)。