我试图弄清楚如何使我的代码运行,但是没有运气。我的代码应该计算文本的Coleman-Liau索引分数。运行代码时,我收到“ IndentationError:意外缩进”。但是对我来说,它不喜欢看起来代码有什么问题...我还应该提到我对编码还很陌生,所以我可能会遗漏一些明显的东西。关于如何解决IndentationError的任何反馈将不胜感激!(请参见下面的代码)
导入CS50导入数学
def main():text = get_string(“在此处插入文本:”)
lettercounter = 0
wordcounter = 0
sentencecounter = 0
#checks if the letters are in the alphabet.
for i in text:
if (i.isalpha()):
lettercounter += 1
# cheks for words
elif i == " ":
wordcounter += 1
elif i in [".", "!", "?"]:
sentencecounter += 1
L = lettercounter * 100 / wordcounter
S = sentencecounter * 100 / sentencecounter
# Coleman-Liau Index Score function
ColemanLiauIndexScore = round(0.0588 * L - 0.296 * S - 15.8)
# printing results
if ColemanLiauIndexScore > 16):
print ("grade 16+")
elif ColemanLiauIndexScore < 1):
print ("before grade 1")
else:
print(f"Grade {difficulty}")
main()
L = lettercounter * 100 / wordcounter
S = sentencecounter * 100 / sentencecounter
# Coleman-Liau Index Score function
ColemanLiauIndexScore = round(0.0588 * L - 0.296 * S - 15.8)
# printing results
if ColemanLiauIndexScore > 16):
print ("grade 16+")
elif ColemanLiauIndexScore < 1):
print ("before grade 1")
else:
print(f"Grade {difficulty}")
注意此行> # printing results
之后,您的行具有意外缩进此块不在循环或函数中,因此没有理由在其中缩进。
# printing results
if ColemanLiauIndexScore > 16):
向左冲洗if
和elif
,错误应该消失了。
# printing results
if ColemanLiauIndexScore > 16):
print ("grade 16+")
elif ColemanLiauIndexScore < 1):
print ("before grade 1")
else:
print(f"Grade {difficulty}")