Noob在这里。我编写了一个程序,允许用户输入他们想要输入数组的等级数,然后让他们输入他们选择的索引数的等级。我试图根据输入的成绩输出总分百分比,并输出实际的字母等级,但我无法弄清楚我要编码转换为字母等级的代码。任何帮助表示赞赏。
代码:
from abc import abstractmethod, ABCMeta
class Model(metaclass=ABCMeta):
@abstractmethod
def foo(self):
"""This method should implement how to foo the model."""
答案 0 :(得分:0)
你可以创建一个函数来从你计算的平均值中得到你的字母等级:
static char GetLetterGrade(double score)
{
if (score >= 90.0)
{
return 'A';
}
if (score >= 80.0)
{
return 'B';
}
if (score >= 70.0)
{
return 'C';
}
if (score >= 60.0)
{
return 'D';
}
return 'F';
}
答案 1 :(得分:0)
首先,你最好做一些更多的作业(而不是计算印刷语句中的成绩)所以我在下面列出了这一点。一旦你在var中有了百分比,你就可以使用if / else或switch来获得字母等级。
ffmpeg -i input.mov -filter_complex "[0:v]scale=-2:720,format=yuv420p[v];[0:a]amerge=inputs=$(ffprobe -loglevel error -select_streams a -show_entries stream=codec_type -of csv=p=0 input.mov | wc -l)[a]" -map "[v]" -map "[a]" -c:v libx264 -crf 23 -preset medium -c:a libmp3lame -ar 44100 -ac 2 output.mov
答案 2 :(得分:0)
我会使用一个开关,为每个字母指定一系列值
答案 3 :(得分:-1)
以最简单的方式......我会创建一个词典:
Key - Value
10 - A
9 - A
8 - B
7 - C
6 - D
5 - F
4 - F
3 - F
2 - F
1 - F
0 - F
现在您已设置此词典,您可以将等级纳入您的方法,除以10,发言并找到与该值相关联的条目。
public class Grades
{
Dictionary<int, char> GradeValues { get; set; }
public Grades()
{
GradeValues.Add(10, 'A');
GradeValues.Add(9, 'A');
GradeValues.Add(8, 'B');
...
GradeValues.Add(0, 'F');
}
public char GetGrade(int grade)
{
char value = GradeValues[int.Floor(grade/10)];
if (value == null)
return 'F';
return value;
}
}
话虽如此,可能有更好的方法来解决这个问题。
编辑:这假设您没有将88等级传递给该方法时发生B级或其他等级。
如果陈述或案例也很有效,但我更喜欢这种开发方法。当您想要更改成绩时,更容易扩展。您不必更新方法。您只需要在构造函数中更新字典。
编辑2:我看到有人对每个答案都进行了低估。我赞成其他答案,因为它们都是有效的......
您可以使用该分数的等级从0到100填写整个字典。