2017-09-17 55 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のコードネームを宣言しようとしています。ビルダービューのスクリプトも追跡して、これを見つけました:#!/ usr/bin/envpython2# - * - coding:utf-8- *私のコードでこれを使用してください、しかしそれは動作しません。 – Heaven

答えて

1

PsychoPyは、Python 3のベータサポートをまもなく追加します。これは、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エンコーディングを宣言するだけでなく、それは(このステップは、最終的にはしませんUnicode文字列であることを示すためにuとあなたの文字列リテラルの前Python 3の下で必要になると思います)。

関連する問題