【问题标题】:SyntaxError: EOL while scanning string literalSyntaxError:扫描字符串文字时 EOL
【发布时间】:2020-02-28 05:38:16
【问题描述】:

我在打印行收到语法错误 EOL。我尝试添加更多逗号,但它不起作用。

def getAuthorized(url, username, password):

r = requests.get(url, auth=(username, password))

    if str(r.status_code) != '401':
        print "\n[!] Username: " + username + " Password: " + password + " 
         Code: " + str(r.status_code) +  "\n"

提前谢谢你!!

【问题讨论】:

  • 您不能在(单引号)字符串文字的中间换行。在+ 之后换行或根本不换行。
  • @RithinChalumuri 注意print 声明;这是 Python 2。

标签: python python-2.7 printing beautifulsoup pip


【解决方案1】:

问题出在"…Code: " — Python 不允许将单引号字符串设为多行;只有三引号字符串可以是多行的。修复:

print "\n[!] Username: " + username + " Password: " + password + \
      " \n Code: " + str(r.status_code) +  "\n"

请注意第一行末尾的反斜杠:它需要在下一行继续声明 print

【讨论】:

    【解决方案2】:

    添加逗号将不起作用。这里的问题是:

    def getAuthorized(url, username, password):
    
    r = requests.get(url, auth=(username, password))
    
        if str(r.status_code) != '401':
            print "\n[!] Username: " + username + " Password: " + password + " 
             Code: " + str(r.status_code) +  "\n"
    

    您可以将打印分成两行,但我不建议您这样做。打印行应该是:

    print "\n[!] Username: " + username + " Password: " + password + " Code: " + str(r.status_code) +  "\n"
    

    所以最终的代码应该是:

    def getAuthorized(url, username, password):
    
    r = requests.get(url, auth=(username, password))
    
        if str(r.status_code) != '401':
            print "\n[!] Username: " + username + " Password: " + password + " Code: " + str(r.status_code) +  "\n"
    

    【讨论】:

    • 您不能将打印内容拆分为两行不正确,您可以使用反斜杠作为续行符将任何语句拆分为多行。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-30
    相关资源
    最近更新 更多