Python入门练习0004:输出L的中位数

题目:给你一个list L, 如 L=[0,1,2,3,4], 输出L的中位数(若结果为小数,则保留一位小数)
答案:
(1)L=[0,1,2,3,4]
   m=len(L)
   L.sort()
   if (m%2)!=0:
       print L[(m-1)/2]
   else:
       print (L[m/2]+L[m/2-1])/2.0
   Python len() 方法返回字符串长度,sort()方法返回顺序排序结果
(2)可以在Python 2里运行的:
    
  1. def fun(*p):
  2. new_p=sorted(p)
  3. n=len(new_p)
  4. if(n%2==0):
  5. a=int(n/2)
  6. b=0.5*(new_p[a-1]+new_p[a])
  7. return '%.1f'%b
  8. else:
  9. a=int((n-1)/2)
  10. return new_p[a]
  11. print (fun(*L))

版权声明:本文为Plosu原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。