cs50可读性pset6 python,此代码应计算单词,句子和字母的数量,但不是

问题描述 投票:1回答:1
from cs50 import get_string
letter=0
sentence=0
word=0
text = get_string("Text: ")
n = len(text)
for i in range(n):
    if text[i].isalnum()==True:
        letter=letter+1
for i in range(n):
    if text[i].isspace()==True and text[i+1].isalnum()==True:
        word=word+1
for i in range(n):
    if text[i]=="?" or text[i]=="." or text[i]=="!":
        sentence=sentence+1
grade = round (0.0588 * ((100 * letter) / word) - 0.296 * ((100 * sentence) / word) - 15.8)
if grade<1:
    print("Before Grade 1")
elif grade < 16:
    print(f"Grade {grade}")
else :
    print("Grade 16+");

https://submit.cs50.io/check50/d3897b249b2ca6ea937d023c25c1607af52ea5cd支票不好

可能是我在其中做错了什么

python cs50 readability
1个回答
1
投票

您在这里有几个问题:

第一个是在开始时使用Text(顺便说一句,不是标准的)与text。这应该可以帮助您很多。

第二个是您实际上没有使用get_string方法。现在,这可能对您有效;我只是将它扔进Juypter笔记本中,因为我想像REPL一样使用它。但是,假设没有,让我们简单地逐步完成它。

Conda环境或带有CS50的pip安装并运行:

enter image description here

运行正常,没有错误。好。现在是第一个块:

letter=0
sentence=0
word=0
Text = get_string("Text: ")

(因为我正在使用笔记本电脑,所以评估为:

文本:无

现在,在cs50库中可能要使用一些特定的东西,但是我使用了输入-并将Text更改为小写。

但是您走在正确的道路上。

© www.soinside.com 2019 - 2024. All rights reserved.