2016-09-08 20 views
1

Python%文字列フォーマットを使用してLaTeXマークアップを生成しようとしています。私は文字列に名前のついたフィールドを使い、そのデータに対応するキーを持つ辞書を使います。しかし、私はエラーValueError: unsupported format character '}'を取得します。なぜこのコードは動作しませんか?ValueError:サポートされていないフォーマット文字 '}'%stringフォーマットを使用する場合

LaTeXentry = '''\\subsection{{%(title)}} 
    \\begin{{itemize}} 
    \\item 
    %(date) 
    \\item 
    %(description) 
    \\item 
    Source:\\cite{{%(title)}} 
    \\item 
    filename(s): 
    %(filename) 
    \\item 
    Contributed by %(name)''' 

LaTeXcodeToAdd = LaTeXentry % { 
    "time" : Timestamp, 
    "date" : date, 
    "description" : summary, 
    "filename" : filename, 
    "name" : name, 
    "title": title, 
} 
Traceback (most recent call last): 
    File "file_directory", line 115, in <module> 
    "title": title, 
ValueError: unsupported format character '}' (0x7d) at index 21 

答えて

1

あなたはs%s標準整形のように追加する必要があります - 何らかの理由で問題が解決しなかった、残念ながら

+0

など、あなたが%(title)sを必要とし、%(date)s。 –

+0

'%(タイトル)s'、'%(日付)s'、 '%(説明)s'、'%(タイトル)s'、 '%(ファイル名) s '、 '%(name)s'です。多分あなたはそれらの1つを忘れてしまったでしょう。 – furas

+0

ありがとう。私はばかだったし、隠されたものを逃した。幸いにも正規表現は私のためにそれをキャッチ! –

関連する問題