0
else:
      fullName = curLineFin[1] + ' ' + curLineFin[2]
      players[fullName] = curLineFin[0] + '\t' + curLineFin[1] + \
      '\t' + curLineFin[2] + '\t' + curLineFin[3] + '\t' + \
      curLineFin[4] + '\t' + curLineFin[5] + '\t' + curLineFin[6] + \
      '\t' + curLineFin[7] + '\t' + curLineFin[8] + '\t' + \
      curLineFin[9] + '\t' + curLineFin[10] + '\t'

每次运行脚本时,我都会收到错误消息:

players[fullName] = curLineFin[0] + '\t' + curLineFin[1] + \
                                                           ^

IndentationError: unindent 不匹配任何外部缩进级别

4

3 回答 3

3

用括号包裹你的代码

players[fullName] = (curLineFin[0] + '\t' + curLineFin[1] + 
      '\t' + curLineFin[2] + '\t' + curLineFin[3] + '\t' + 
      curLineFin[4] + '\t' + curLineFin[5] + '\t' + curLineFin[6] + 
      '\t' + curLineFin[7] + '\t' + curLineFin[8] + '\t' + 
      curLineFin[9] + '\t' + curLineFin[10] + '\t' )

或者

players[fullName] = '\t'.join(curLineFin[:11]) + '\t'

或者如果不需要这个尾随制表符,并且curLineFin.

players[fullName] = '\t'.join(curLineFin) 
于 2013-11-01T23:15:52.810 回答
1

只需使用括号:

fullName = (curLineFin[1] + ' ' + curLineFin[2] +
      players[fullName] = curLineFin[0] + '\t' + curLineFin[1] + 
      '\t' + curLineFin[2] + '\t' + curLineFin[3] + '\t' + 
      curLineFin[4] + '\t' + curLineFin[5] + '\t' + curLineFin[6] + 
      '\t' + curLineFin[7] + '\t' + curLineFin[8] + '\t' + 
      curLineFin[9] + '\t' + curLineFin[10] + '\t')
于 2013-11-01T23:16:31.720 回答
1

您发布的代码不会产生该错误,因此无法准确诊断您实际运行的不同代码中发生的情况。

最可能的原因是它与反斜杠完全无关,并且您正在执行混合制表符和空格之类的操作。(事实上​​,你对块使用奇怪的 6 字符缩进并不是一个好兆头……)

另一种可能性是您在一个反斜杠之后放置了额外的空格。这通常应该SyntaxError: unexpected character after line continuation character给你 a ,但有可能将 Python 混淆到它通过的地步,你会得到以下泛型SyntaxError的 a+没有正确的操作数或IndentationError下一行。

于 2013-11-01T23:31:54.340 回答