ITとかCockatielとか

技術のこととか。飼鳥(オカメインコ)のこととか。気になったこととか。基本的には備忘録。

%activity マジックコマンドでエンコードエラー

エラー概要

Qiskit Advocateのテストの翻訳中に、マジックコマンドでエラーが発生。

%activity questions/circuits

を実行したら。

Error in calling magic 'activity' on line: 'cp932' codec can't decode byte 0x81 in position 297: illegal multibyte sequence

が発生。

f:id:sik_bug:20200905102553p:plain

%activity

metakernelライブラリのLine Magicsのひとつ。

1. Line Magics — Metakernel 0.27.0 documentation

テスト問題と回答のリストを与えることで、テスト回答をファイル出力できるもの。

事象

%activityコマンドは、外部のJSONファイルを読み込んで問題等を表示する仕組みになっているが、読み込みの際に日本語フォントでエラーとなってしまった。

解決方法

Windows環境の場合、cp932でエンコードするのでエラーとなってしまった。
読み込み先のJSONファイルを確認するとUTF-8になっていたので、SJISで保存しなおして(sakuraエディタで開いてSJISで保存)読み込んだら、日本語が問題なく表示された。

f:id:sik_bug:20200905103314p:plain