Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
曲线坡度fx(列表操作和循环)python_Python_For Loop_Nested - Fatal编程技术网

曲线坡度fx(列表操作和循环)python

曲线坡度fx(列表操作和循环)python,python,for-loop,nested,Python,For Loop,Nested,我试着把一个fx放在一起,我让用户输入一个等级列表和要绘制曲线的点列表。然后,fx应将“curve by”中的金额添加到每个测试分数中,然后返回平均值。在一个fx中,我可以要求分数、curve by中的金额,并列出原始分数,并将分数金额添加到每个分数中。在第二个外汇中,我可以对新列表进行求和(w/out sum fx-important),然后获取并返回平均值。是否可以将这些数据合并到一个外汇中?对于这个赋值,我可以使用For/while循环和条件 1) 。获取列表并添加点以创建新列表 grad

我试着把一个fx放在一起,我让用户输入一个等级列表和要绘制曲线的点列表。然后,fx应将“curve by”中的金额添加到每个测试分数中,然后返回平均值。在一个fx中,我可以要求分数、curve by中的金额,并列出原始分数,并将分数金额添加到每个分数中。在第二个外汇中,我可以对新列表进行求和(w/out sum fx-important),然后获取并返回平均值。是否可以将这些数据合并到一个外汇中?对于这个赋值,我可以使用For/while循环和条件

1) 。获取列表并添加点以创建新列表

grades = [int(x) for x in input("Please enter the grades separated by a space").split()]

c = float(input("Please enter the number of points to curve by: "))

new = [ ]

def addcurve(grades, c):
    for n in grades:
        new.append(n+c)
    return new

print(addcurve(grades, c))

[OUT]: [94.0, 45.0, 78.0, 95.0, 60.0, 74.0]
2) 。对新列表求和并取平均值

[IN]:
def sumavg(new):
    total_sum = 0
    for n in new:
        total_sum += n  
        gt = len(new)
        final = total_sum/gt
    return "%.2f" %(final)
打印(“通过等级曲线后的新平均值为”,sumavg(新))

如果有人有见解,请告诉我

谢谢大家!

干杯


Rachel

首先,在函数外部声明变量是一种不好的做法,函数使用该变量存储其操作的结果并返回它。相反,在
addcurve()中声明
new=[]

其次,您需要的功能是:

def foo(c级):
总和=0
对于n级:
总和+=n+c
最终=总和/长度(等级)
返回“%.2f”%(最终)

谢谢您的帮助!至于fx之外的变量,这正是我在课堂上看到的。感谢你的洞察力!实际上,如果我不在fx之外定义new,它就不会存储它。正确的方法是在函数内部定义
new=[]
,然后返回它。要存储结果,只需像这样调用函数
new=addcurve(grades,c)
,然后
print(new)
。其余的都保持原样。
[OUT]: The new average after curving the grades is 74.33