while循环求最大最小值问题

编程求列表s=[9,7,8,3,2,1,55,6]中的元素个数、最大值、最小值、元素之和、平均值。要求:不能使用max(x) , min(x) , sum(x)这几个函数。分别用for和while实现,保存为74a.py和74b.py。
while循环用得很少,不知道该怎么去写,

while 只要加上判断及退出的条件,其它都一样

s=[9,7,8,3,2,1,55,6]
 
s_count=0
s_max=s[0]
s_min=s[0]
s_sum=s[0]
s_ave=s[0]

tmp = s[::-1]
while tmp:  #tmp非空就循环继续
    i = tmp.pop() #不断减少列表元素
    s_count=s_count+1
    s_sum=s_sum+i
    if i > s_max:
        s_max=i
    if i < s_min:
        s_min=i
s_ave=s_sum/s_count
 
print("count:",s_count)
print("sum:",s_sum)
print("max:",s_max)
print("ave:",s_ave)
print("min:",s_min)


s=[9,7,8,3,2,1,55,6]

s_count=0
s_max=s[0]
s_min=s[0]
s_sum=s[0]
s_ave=s[0]

for i in s:
    s_count=s_count+1
    s_sum=s_sum+i
    if i > s_max:
        s_max=i
    if i < s_min:
        s_min=i
s_ave=s_sum/s_count

print("count:",s_count)
print("sum:",s_sum)
print("max:",s_max)
print("ave:",s_ave)
print("min:",s_min)