2

私のコードは、

import MySQLdb
import collections
from pymongo import Connection

from config.MySQLdb import *
from config.MongoDB import *
from config.SyncTables import *

db = MySQLdb.connect(DB_HOST,DB_USR,DB_PWD,DB_NAME)
cursor = db.cursor()
query = "SELECT * FROM table_name WHERE userid = 1"
cursor.execute(query)
row = cursor.fetchall()

mconn = Connection(MONGODB_HOST,MONGODB_PORT)
mdb = mconn[MONGODB_DBNAME]
#col = mdb[trngl_advertiser_agegroup]

db.trngl_advertiser_agegroup .insert({'id': row[0],'userid':row[1], 'ageid':row[2],       'age_value':row[3], \                                             'created':row[4],  'modified':row[5]})
print "after update"

しかし、私はこのエラーが発生しています。

triongle@triongle.com [~/download/DataInsertionScript]# python IngestDataToMongo.py

  File "IngestDataToMongo.py", line 21
    db.table_name.insert({'id': row[0],'userid':row[1], 'ageid':row[2],  'age_value':row[3],\                                                       'created':row[4], 'modified':row[5]})
                                                                                                                                                                                               ^

SyntaxError: unexpected character after line continuation character

しかし、 の後に予期しない文字は表示されません。なぜこのエラーが発生するのか教えてください

エラー画像は、 ここに画像の説明を入力

4

2 に答える 2

6

コードはすべて 1 行ですが、行継続エスケープ文字 ( \) を使用しています。その文字を削除します。

db.trngl_advertiser_agegroup .insert({'id': row[0],'userid':row[1], 'ageid':row[2], 'age_value':row[3], 'created':row[4],  'modified':row[5]})

括弧や角かっこの中で行を分割する場合、このような行継続トリックを使用する必要はまったくありません。ステートメントを複数の行に安全に配置できます

db.trngl_advertiser_agegroup .insert({
    'id': row[0],
    'userid':row[1], 
    'ageid':row[2], 
    'age_value':row[3],
    'created':row[4],
    'modified':row[5]
})
于 2012-11-27T10:17:58.203 に答える
1

[]、{}、または () 内の行継続文字は必要ありません。\を省略したい場合は、自由に複数行に引数を入力してください。

于 2012-11-27T10:22:47.390 に答える