行继续字符python之后的语法错误意外字符

时间:2012-11-27 10:15:02

标签: python character syntax-error

我的代码是,

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

但是之后我没有看到任何意外的角色。所以请告诉我,为什么我收到此错误

错误图片是, enter image description here

2 个答案:

答案 0 :(得分: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]})

在断开括号或括号内的行时,你不需要在所有中使用这样的行继续技巧,你可以安全地将语句放在多行上而不用它:

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

答案 1 :(得分:1)

您不需要[],{}或()中的行继续符。如果没有 \

,请随意将参数放在多行中