###举一个例子:
#####计算1-10000中"1"的出现次数
import numpy as np # 使用前请先安装numpy模块
import sys
sys.setrecursionlimit(100000) # python默认最大递归次数为1000,这里设置为100000
def calc(number):
if number>=10000: # 为计算到10000时停止
return 1
else:
li = list(str(number)) # 将每个位数int转换为str格式保存为list
_li = map(int,li) # 将str转换为int
arr = np.array(_li) # 将普通的list转换为nArray,用于arr[arr>1]=0
arr[arr>1]=0 # 将所有>1的的元素置为0,方便求和计算
return sum(arr)+calc(number+1) # 求和并进行下一个数递归
print calc(int(1))
#####运行结果:4001