前提・実現したいこと
「将棋AIで学ぶディープランニング」という本を元にpython-shogiを用いたプログラムを作っていましたが途中で本と挙動が変わりました。
棋譜をテキストファイルに変換した後kifu=shogi.CSA.Parser.parse_file(filepath)[0]
とすると棋譜を読み込むような挙動をする(のですがその後kifu[‘moves’]を見てもkifuが定義されてないと言われます)
棋譜を読み込んでいると思っていましたが出ていたのはエラーメッセージでした
申し訳ありません。
発生している問題・エラーメッセージ
Pythonista3 でのメッセージ Traceback (most resent call last): File “<string>”, line1, in <module> File “/private/var/mobile/Contains/Shared/AppGroup/C12A453E-BFB5-4B35-98DE-3D28DD25CBB2/Pythonista3/Document/site-packages/shogi/CSA.py”, line 67, inparse_file return Parser.parse_str(f.read()) File “/private/var/mobile/Contains/Shared/AppGroup/C12A453E-BFB5-4B35-98DE-3D28DD25CBB2/Pythonista3/Document/site-packages/shogi/CSA.py”, line 125, inparse_str raise ValueError(‘Invalid line {0}: {1}’.format(line_no, line)) ValueError: Invalid line 1 2016/ wdoor+floodgate-600-10F+SILENT_MAJORITY_i7-4510U+Azul_demo_pentium_1c+20160723140002.csa
該当のソースコード
python3
1テキスト化した棋譜があるとこと同じディレクトリで,インタープリタに入力しています 2 3 4import shogi 5import shogi.CSA 6kifu = shogi.CSA.Parser.parse_file(‘kifulist_test.txt’)[0] 7
試したこと
shogi.CSAではなくshogi.KIFで試したてkifu[‘moves’]と入力したところ[]と出力されました。
またkifuと入力すると
{‘name’:[None, None], ‘sfen’: ‘lnsgksnl/1r5b1/ppppppppp/9/9/9PPPPPPPPP/1B5R1/LNSGKGSNL b-1’, ‘moves’:[], ‘win’:None}
と出力されました。
補足情報(FW/ツールのバージョンなど)
使用しているのはWindows10のAnaconda3とiPadのpythonista3です。
両方で同じ挙動を示しました。
https://teratail.com/questions/124242 https://teratail.com/questions/124243 この質問と内容が同じです。teratailは質問内容の編集ができるので、変更がある場合は新しい質問をするのではなく編集してください。また、どちらかを削除されるよう運営に連絡されることをお勧めします。https://teratail.com/contact/input
過去二つの質問は誤って投稿したようですね。その二つは削除依頼を出し、さらに本文を編集して回答が付かないよう配慮してください。
すいません直前の2つについて削除の連絡をします。

回答1件
あなたの回答
tips
プレビュー