Python 如何使这个IF语句工作

Python 如何使这个IF语句工作,python,Python,在我把所有数字中的所有东西都放进F后,这会发生,即使你把96作为输入。我在这里看到的一个问题是,你试图对字符串而不是数字执行不等式。尝试将输入值转换为整数 如果将fgrades中的值存储为整数,例如[90、70、60、88、96],那么这应该可以: fgrades=["90","70","63","81","49"] a=0 b=0 c=0 d=0 f=0 grades=raw_input("enter your final grade: ") fg

在我把所有数字中的所有东西都放进F后,这会发生,即使你把96作为输入。

我在这里看到的一个问题是,你试图对字符串而不是数字执行不等式。尝试将输入值转换为整数

如果将fgrades中的值存储为整数,例如[90、70、60、88、96],那么这应该可以:

fgrades=["90","70","63","81","49"]   
a=0
b=0    
c=0    
d=0    
f=0    
grades=raw_input("enter your final grade: ")    
fgrade+=(grades,)

for i in range(len(fgrades)):
   if fgrades[i]>="90":
      a+=1        
   elif fgrades[i]>="80":
      b+=1        
   elif fgrades[i]>="70":
       c+=1        
   elif fgrades[i]>="60":
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f
否则,如果出于某种原因要求将等级存储为字符串,例如[“90”、“70”、“63”、“81”、“49”),则以下内容适用于您:

fgrades=[90, 70, 60, 88, 96]

a=0

b=0

c=0

d=0

f=0

grades=raw_input("enter your final grade: ")

# Clean up grades, and convert to an integer
grades = int(grades.strip().replace(" ","")

fgrades.append(grades)

for i in range(len(fgrades)):

   if fgrades[i]>=90:
      a+=1        
   elif fgrades[i]>=80:
      b+=1        
   elif fgrades[i]>=70:
       c+=1        
   elif fgrades[i]>=60:
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f

我在这里看到的一个问题是,您试图对字符串而不是数字执行不等式。尝试将输入值转换为整数

如果将fgrades中的值存储为整数,例如[90、70、60、88、96],那么这应该可以:

fgrades=["90","70","63","81","49"]   
a=0
b=0    
c=0    
d=0    
f=0    
grades=raw_input("enter your final grade: ")    
fgrade+=(grades,)

for i in range(len(fgrades)):
   if fgrades[i]>="90":
      a+=1        
   elif fgrades[i]>="80":
      b+=1        
   elif fgrades[i]>="70":
       c+=1        
   elif fgrades[i]>="60":
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f
否则,如果出于某种原因要求将等级存储为字符串,例如[“90”、“70”、“63”、“81”、“49”),则以下内容适用于您:

fgrades=[90, 70, 60, 88, 96]

a=0

b=0

c=0

d=0

f=0

grades=raw_input("enter your final grade: ")

# Clean up grades, and convert to an integer
grades = int(grades.strip().replace(" ","")

fgrades.append(grades)

for i in range(len(fgrades)):

   if fgrades[i]>=90:
      a+=1        
   elif fgrades[i]>=80:
      b+=1        
   elif fgrades[i]>=70:
       c+=1        
   elif fgrades[i]>=60:
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f

我在这里看到的一个问题是,您试图对字符串而不是数字执行不等式。尝试将输入值转换为整数

如果将fgrades中的值存储为整数,例如[90、70、60、88、96],那么这应该可以:

fgrades=["90","70","63","81","49"]   
a=0
b=0    
c=0    
d=0    
f=0    
grades=raw_input("enter your final grade: ")    
fgrade+=(grades,)

for i in range(len(fgrades)):
   if fgrades[i]>="90":
      a+=1        
   elif fgrades[i]>="80":
      b+=1        
   elif fgrades[i]>="70":
       c+=1        
   elif fgrades[i]>="60":
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f
否则,如果出于某种原因要求将等级存储为字符串,例如[“90”、“70”、“63”、“81”、“49”),则以下内容适用于您:

fgrades=[90, 70, 60, 88, 96]

a=0

b=0

c=0

d=0

f=0

grades=raw_input("enter your final grade: ")

# Clean up grades, and convert to an integer
grades = int(grades.strip().replace(" ","")

fgrades.append(grades)

for i in range(len(fgrades)):

   if fgrades[i]>=90:
      a+=1        
   elif fgrades[i]>=80:
      b+=1        
   elif fgrades[i]>=70:
       c+=1        
   elif fgrades[i]>=60:
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f

我在这里看到的一个问题是,您试图对字符串而不是数字执行不等式。尝试将输入值转换为整数

如果将fgrades中的值存储为整数,例如[90、70、60、88、96],那么这应该可以:

fgrades=["90","70","63","81","49"]   
a=0
b=0    
c=0    
d=0    
f=0    
grades=raw_input("enter your final grade: ")    
fgrade+=(grades,)

for i in range(len(fgrades)):
   if fgrades[i]>="90":
      a+=1        
   elif fgrades[i]>="80":
      b+=1        
   elif fgrades[i]>="70":
       c+=1        
   elif fgrades[i]>="60":
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f
否则,如果出于某种原因要求将等级存储为字符串,例如[“90”、“70”、“63”、“81”、“49”),则以下内容适用于您:

fgrades=[90, 70, 60, 88, 96]

a=0

b=0

c=0

d=0

f=0

grades=raw_input("enter your final grade: ")

# Clean up grades, and convert to an integer
grades = int(grades.strip().replace(" ","")

fgrades.append(grades)

for i in range(len(fgrades)):

   if fgrades[i]>=90:
      a+=1        
   elif fgrades[i]>=80:
      b+=1        
   elif fgrades[i]>=70:
       c+=1        
   elif fgrades[i]>=60:
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f

首先,您尝试对字符串执行大于或等于数字的操作。如果要比较数字,则必须将其转换为数字数据类型(int、float、decimal)

其次,安迪的评论也是正确的
fgrade
尚未作为变量/对象存在

fgrades= ["90","70","63","81","49"] 

a=0

b=0

c=0

d=0

f=0

grades=raw_input("enter your final grade: ")

# Clean up grades
grades = grades.strip().replace(" ","")

fgrades.append(grades)

for i in range(len(fgrades)):

   if int(fgrades[i])>=90:
      a+=1        
   elif int(fgrades[i])>=80:
      b+=1        
   elif int(fgrades[i])>=70:
       c+=1        
   elif int(fgrades[i])>=60:
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f

首先,您尝试对字符串执行大于或等于数字的操作。如果要比较数字,则必须将其转换为数字数据类型(int、float、decimal)

其次,安迪的评论也是正确的
fgrade
尚未作为变量/对象存在

fgrades= ["90","70","63","81","49"] 

a=0

b=0

c=0

d=0

f=0

grades=raw_input("enter your final grade: ")

# Clean up grades
grades = grades.strip().replace(" ","")

fgrades.append(grades)

for i in range(len(fgrades)):

   if int(fgrades[i])>=90:
      a+=1        
   elif int(fgrades[i])>=80:
      b+=1        
   elif int(fgrades[i])>=70:
       c+=1        
   elif int(fgrades[i])>=60:
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f

首先,您尝试对字符串执行大于或等于数字的操作。如果要比较数字,则必须将其转换为数字数据类型(int、float、decimal)

其次,安迪的评论也是正确的
fgrade
尚未作为变量/对象存在

fgrades= ["90","70","63","81","49"] 

a=0

b=0

c=0

d=0

f=0

grades=raw_input("enter your final grade: ")

# Clean up grades
grades = grades.strip().replace(" ","")

fgrades.append(grades)

for i in range(len(fgrades)):

   if int(fgrades[i])>=90:
      a+=1        
   elif int(fgrades[i])>=80:
      b+=1        
   elif int(fgrades[i])>=70:
       c+=1        
   elif int(fgrades[i])>=60:
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f

首先,您尝试对字符串执行大于或等于数字的操作。如果要比较数字,则必须将其转换为数字数据类型(int、float、decimal)

其次,安迪的评论也是正确的
fgrade
尚未作为变量/对象存在

fgrades= ["90","70","63","81","49"] 

a=0

b=0

c=0

d=0

f=0

grades=raw_input("enter your final grade: ")

# Clean up grades
grades = grades.strip().replace(" ","")

fgrades.append(grades)

for i in range(len(fgrades)):

   if int(fgrades[i])>=90:
      a+=1        
   elif int(fgrades[i])>=80:
      b+=1        
   elif int(fgrades[i])>=70:
       c+=1        
   elif int(fgrades[i])>=60:
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f

这里有一些建议,您可以考虑编写代码。 首先,您可以将for循环语句从

fgrades=[]   
a=0
b=0    
c=0    
d=0    
f=0    
grades=int(raw_input("enter your final grade: "))
fgrades += (grades,)

for i in range(len(fgrades)):
   if fgrades[i]>=90:
      a+=1        
   elif fgrades[i]>=80:
      b+=1        
   elif fgrades[i]>=70:
       c+=1        
   elif fgrades[i]>=60:
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f

因此,接下来,您只需要对值
i
进行比较,而不是
fgrades[i]

因此,您的代码将是

for i in fgrades:
    ....

这里有一些建议,您可以考虑编写代码。 首先,您可以将for循环语句从

fgrades=[]   
a=0
b=0    
c=0    
d=0    
f=0    
grades=int(raw_input("enter your final grade: "))
fgrades += (grades,)

for i in range(len(fgrades)):
   if fgrades[i]>=90:
      a+=1        
   elif fgrades[i]>=80:
      b+=1        
   elif fgrades[i]>=70:
       c+=1        
   elif fgrades[i]>=60:
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f

因此,接下来,您只需要对值
i
进行比较,而不是
fgrades[i]

因此,您的代码将是

for i in fgrades:
    ....

这里有一些建议,您可以考虑编写代码。 首先,您可以将for循环语句从

fgrades=[]   
a=0
b=0    
c=0    
d=0    
f=0    
grades=int(raw_input("enter your final grade: "))
fgrades += (grades,)

for i in range(len(fgrades)):
   if fgrades[i]>=90:
      a+=1        
   elif fgrades[i]>=80:
      b+=1        
   elif fgrades[i]>=70:
       c+=1        
   elif fgrades[i]>=60:
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f

因此,接下来,您只需要对值
i
进行比较,而不是
fgrades[i]

因此,您的代码将是

for i in fgrades:
    ....

这里有一些建议,您可以考虑编写代码。 首先,您可以将for循环语句从

fgrades=[]   
a=0
b=0    
c=0    
d=0    
f=0    
grades=int(raw_input("enter your final grade: "))
fgrades += (grades,)

for i in range(len(fgrades)):
   if fgrades[i]>=90:
      a+=1        
   elif fgrades[i]>=80:
      b+=1        
   elif fgrades[i]>=70:
       c+=1        
   elif fgrades[i]>=60:
       d+=1        
   else:
       f+=1

print a,"\n",b,"\n",c,"\n",d,"\n",f

因此,接下来,您只需要对值
i
进行比较,而不是
fgrades[i]

因此,您的代码将是

for i in fgrades:
    ....

你的意见是什么?此外,如果要添加变量,则行
fgrade+=(grades,)
可能应该使用存在的变量。你的意思是
fgrades
?我在写一个程序,要求用户输入一个你在上面看到的数字,这个数字应该会恢复到列表中,然后我需要检查这个数字是a、b、c、d还是fLet。请重新表述我的问题:当你在调试时看到提示时,你键入什么作为答案?我们需要能够复制您的输入。您的输入是什么?此外,如果要添加变量,则行
fgrade+=(grades,)
可能应该使用存在的变量。你的意思是
fgrades
?我在写一个程序,要求用户输入一个你在上面看到的数字,这个数字应该会恢复到列表中,然后我需要检查这个数字是a、b、c、d还是fLet。请重新表述我的问题:当你在调试时看到提示时,你键入什么作为答案?我们需要能够复制您的输入。您的输入是什么?此外,如果要添加变量,则行
fgrade+=(grades,)
可能应该使用存在的变量。你的意思是
fgrades
?我在写一个程序,要求用户输入一个你在上面看到的数字,这个数字应该会恢复到列表中,然后我需要检查这个数字是a、b、c、d还是fLet。请重新表述我的问题:当你在调试时看到提示时,你键入什么作为答案?我们需要能够复制您的输入。您的输入是什么?此外,如果要添加变量,则行
fgrade+=(grades,)
可能应该使用存在的变量。你是说
fgrades
?我在写一个程序,要求用户输入一个数字