python计算书页码的统计数字问题实例

yipeiwu_com5年前Python基础

本文实例讲述了python计算书页码的统计数字问题,是Python程序设计中一个比较典型的应用实例。分享给大家供大家参考。具体如下:

问题描述:对给定页码n,计算出全部页码中分别用到多少次数字0,1,2,3,4...,9

实例代码如下:

def count_num1(page_num): 
  num_zero = 0 
  num_one = 0 
  num_two = 0 
  num_three = 0 
  num_four = 0 
  num_five = 0 
  num_six = 0 
  num_seven = 0 
  num_eight = 0 
  num_nine = 0 
  page_list = range(1,page_num + 1) 
  for page in page_list: 
    page = str(page) 
    num_zero += page.count('0') 
    num_one += page.count('1') 
    num_two += page.count('2') 
    num_three += page.count('3') 
    num_four += page.count('4') 
    num_five += page.count('5') 
    num_six += page.count('6') 
    num_seven += page.count('7') 
    num_eight += page.count('8') 
    num_nine += page.count('9') 
  result = [num_zero,num_one,num_two,num_three,num_four,num_five,num_six,num_seven,num_eight,num_nine] 
  return result 
 
print count_num1(13) 

上面这段代码略显臃肿,所以改了下代码。

改后的代码如下:

def count_num2(page_num): 
  page_list = range(1,page_num + 1) 
  result = [0 for i in range(10)] 
  for page in page_list: 
    page = str(page) 
    for i in range(10): 
      temp = page.count(str(i)) 
      result[i] += temp 
  return result
print count_num2(13)

本文实例测试运行环境为Python2.7.6

程序输出结果为:

[1, 6, 2, 2, 1, 1, 1, 1, 1, 1]

希望本文所述对大家的Python程序设计有所帮助。

相关文章

解决项目pycharm能运行,在终端却无法运行的问题

解决项目pycharm能运行,在终端却无法运行的问题 报 ModuleNotFoundError: No module named '****' 错误。 运行的文件夹又不在根目录下, 在...

python数据结构之图深度优先和广度优先实例详解

本文实例讲述了python数据结构之图深度优先和广度优先用法。分享给大家供大家参考。具体如下: 首先有一个概念:回溯   回溯法(探索与回溯法)是一种选优搜索法,按选优条件向前搜索,以达...

详解Python之unittest单元测试代码

详解Python之unittest单元测试代码

前言 编写函数或者类时,还可以为其编写测试。通过测试,可确定代码面对各种输入都能够按要求的那样工作。 本次我将介绍如何使用Python模块unittest中的工具来测试代码。 测试函数...

Python2.x利用commands模块执行Linux shell命令

用Python写运维脚本时,经常需要执行linux shell的命令,Python中的commands模块专门用于调用Linux shell命令,并返回状态和结果,下面是commands...

python实现websocket的客户端压力测试

使用python进行websocket的客户端压力测试,这个代码是从github上 找到。然后简单修改了下。大神运用了进程池,以及线程池的内容。所以保存下来,学习学习 然后需要说明的是:...