はどうやら、このための引数はply.yaccにあります
def yacc(method='LALR', debug=yaccdebug, module=None, tabmodule=tab_module, start=None,
check_recursion=1, optimize=0, write_tables=1, debugfile=debug_file,outputdir='',
debuglog=None, errorlog = None, picklefile=None):
ので、あなただけの標準出力/標準エラー出力に印刷されませんデバッグ()などのメソッドで別のエラーログとDEBUGLOGを(渡します)。そして、あなたは固定された出力ディレクトリを指定します。それだけであなたがする必要があります。
UPDATE:私はちょうどチェックして、これが正しい設定です:
yacc.yacc(
debug=False, # do not create parser.out
outputdir=r"c:\temp\aaa" # instruct to place parsetab here
)
実はすでにparsetab.pyが含まれているoutputDirのを使用する必要があります。これにより、メッセージだけでなく、プログラムがparsetab.pyを書き出すこともなくなります。それはちょうどそれを使用します。
「ply」でこれを実行できるかどうかわかりません。使用するファイル名やディレクトリを変更することも、テーブルを常に再生成することもできます(文法のサイズによってはオプションではない可能性があります)。しかし、生成されたパーサーテーブルを出荷する...知らない。 :/ – elias