2016-04-29 18 views
1

hereの\ def \ variableName {variable}関数を使用して、Pythonのサブプロセスから変数を私のLatexスクリプトに渡そうとしています。変数名として特定の単語を使用すると、スクリプトは実行されず、この 'エラー'が表示されます(実際にはエラーではありませんが、プログラムはここで停止します)。いくつかの理由から def error in Latex

This is pdfTeX, Version 3.14159265-2.6-1.40.16 (MiKTeX 2.9) entering extended mode LaTeX2e <2015/10/01> patch level 2 Babel <3.9n> and hyphenation patterns for 69 languages loaded. *

これは動作します:誰もがこの問題またはラテックスの意志に遭遇した場合疑問に思う

subprocess.call('pdflatex "\def\city{'+sys.argv[1][(sys.argv[1].rfind(os.sep))+1:-4]+'} \ \def\collisions{'+str(accidentDistributionList[0])+'} \ \def\nearmisses{'+str(accidentDistributionList[1])+'} \ \input{Summary.tex}"', shell=True)

subprocess.call('pdflatex "\def\city{'+sys.argv[1][(sys.argv[1].rfind(os.sep))+1:-4]+'} \ \def\collisions{'+str(accidentDistributionList[0])+'} \ \def\collisionsb{'+str(accidentDistributionList[1])+'} \ \input{Summary.tex}"', shell=True)

をしかし、これはしていません特定の単語だけを変数名として受け入れますか?

答えて

1

誰かがこの問題に直面した場合、私は解決策を見つけました。

def\nearmiss{variable}を定義するときには、\nというエスケープ文字を読んでいたので、私がしなければならなかったのはdef\\nearmiss{variable}でした。

誰かを助ける希望!