| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
x
 
题目: 
用字符做一个简单的直方图(柱状图)。已知每月的数据如下: 
[7, 3, 2, 9, 5, 1, 4, 0, 2, 8, 3, 9] 
做出横坐标为月份的直方图。 
 
- |                *                                       *
 
 - |                *                             *         *
 
 - | *              *                             *         *
 
 - | *              *                             *         *
 
 - | *              *    *                        *         *
 
 - | *              *    *         *              *         *
 
 - | *    *         *    *         *              *    *    *
 
 - | *    *    *    *    *         *         *    *    *    *
 
 - | *    *    *    *    *    *    *         *    *    *    *
 
 - ------------------------------------------------------------
 
 -   1月  2月  3月  4月  5月  6月  7月  8月  9月  10月 11月 12月
 
  复制代码 
 
求大神指导。
- def func(nums):
 
 -     lis = [['|']+['     ' if max(nums)-x>i else '  *  ' for x in nums] for i in range(max(nums))]
 
 -     lis.append(["-"]+['-----' for i in range(12)])
 
 -     lis.append([" "]+[' {}月 '.format(i) for i in range(1,13)])
 
 -     for i in lis:
 
 -         print(''.join(i))
 
  
- if __name__ == '__main__':
 
 -     func([7, 3, 2, 9, 5, 1, 4, 0, 2, 8, 3, 9])
 
  复制代码 
- |                 *                                       *  
 
 - |                 *                             *         *  
 
 - |  *              *                             *         *  
 
 - |  *              *                             *         *  
 
 - |  *              *    *                        *         *  
 
 - |  *              *    *         *              *         *  
 
 - |  *    *         *    *         *              *    *    *  
 
 - |  *    *    *    *    *         *         *    *    *    *  
 
 - |  *    *    *    *    *    *    *         *    *    *    *  
 
 - -------------------------------------------------------------
 
 -   1月  2月  3月  4月  5月  6月  7月  8月  9月  10月  11月  12月 
 
  复制代码 
 
 
 
 |   
 
 
 
 |