2016-04-15 19 views
0

私はpython 2.7を使用しています。私は4つの変数を追加したいトリプルクォート文字列を持っています。その文字列は、REST APIが処理する投稿要求で使用されます。以下は、それはそれ紀元前に短縮された文字列は、長い500以上のラインである:複数の変数を追加するpythonのトリプルクォート文字列

curDate = str(datetime.datetime.now().year)+"/"+str(datetime.datetime.now().month)+"/"+str(datetime.datetime.now().day)\ 
      +" "+str(datetime.datetime.now().hour)+":"+str(datetime.datetime.now().minute)+":"\ 
      +str(datetime.datetime.now().second) 

... 

payload = ''' 
    ... 
"CaptureTime": %(captureTime), 
    ... 
"dataTime1": %(dataTime1) 
    ... 
"dataTime2": %(dataTime2) 
    ... 
"dataTime3": %(dataTime3) 
    ... 
"dataTime4": %(dataTime4) 
    ... 
''' % dict(captureTime=curDate, dataTime1=curDate, dataTime2=curDate, dataTime3=curDate, dataTime4=curDate) 

これは私が受け取るエラーです:

Traceback (most recent call last): 
    File "/xxx/xxxx/xxxxxx/Rest/Post.py", line 6130, in <module> 
    ''' % {'captureTime':curDate, 'dataTime1':curDate, 'dataTime2':curDate, 'dataTime3':curDate, 'dataTime4':curDate} 
ValueError: unsupported format character ',' (0x2c) at index 204 

は、任意およびすべてのヘルプをありがとう!

+0

あなたは何の理由もなく、 'datetime.datetime.now()'を何度も評価しています。 'namedtuple'を返します。一度評価して名前を付けて効率的にするだけです。 –

答えて

2

probleあなたが使用されます。

%(captureTime), 

代わりにタイプ(私はあなたが文字列としての資格しようとしていると仮定)予選:

%(captureTime)s, 

それでコンマをタイプとして認識されませんが%の修飾子。

関連する問題