Python在一行中连接并打印行,而不是2行

时间:2014-12-30 20:56:33

标签: python python-2.7 unix python-3.x

我是python的新手。这是一个非常简单的错误。我试图连接字符串以创建一个大字符串。出于某种原因,它正在以2行打印字符串

    sqlQuery = 'DELETE FROM DomainsCategories WHERE  DomainName=' + '\"' + domain + '\"' + ';'
    targetSqlFile.write(sqlQuery)
    targetSqlFile.write("\n")

文本文件中的输出如下:

 DELETE FROM DomainsCategories WHERE  DomainName="abc.com
 ";

我喜欢这样的地方

 DELETE FROM DomainsCategories WHERE  DomainName="abc.com";

3 个答案:

答案 0 :(得分:3)

尝试在查询中使用之前删除域变量:

domain = domain.strip()

答案 1 :(得分:3)

您的代码没有任何问题。问题是domain变量以换行符结束。

您可以使用domain.strip()来解决此问题,但您可能希望从根本位置修复错误。

答案 2 :(得分:0)

如果你这样使用它会怎样:

  for domain in domainsList:
    domain.strip()
    sqlQuery = 'DELETE FROM DomainsCategories WHERE  DomainName="%s";\n' % domain
    targetSqlFile.write(sqlQuery)

无论如何,这比使用string + '\"'+domain+'\"'

的类似php的东西更具可读性