Python,字符串格式化,奇怪的输出

时间:2012-02-13 10:15:34

标签: python string formatting

我有这个字符串

q="""insert into genres (movieid,%(genre_name)s) values (%(movieid)i,1)""" % {'genre_name': t2, 'movieid': movieid}

print q的结果是

  

)values(1,1)nres(movieid,adventure

而不是

  

插入到流派(movieid,冒险)值(1,1)

为什么?

1 个答案:

答案 0 :(得分:6)

你的电影genre_name有回车。

示例:

q="""insert into genres (movieid,%(genre_name)s) values (%(movieid)i,1)""" % {'genre_name': 'horro\r', 'movieid': 12}

print q

给出:

) values (12,1)res (movieid,horro

您应该清理您的输入。在那里有一个反斜杠很奇怪,但也许可以将其改为斜杠或使其成为adventure(r)