python奇数阶乘求和_使用Python阶乘求和的方法及问题总结
使用Python阶乘求和的方法及问题总结
发布时间:2020-04-28 09:23:14
来源:亿速云
阅读:190
作者:小新
本篇文章和大家了解一下使用Python阶乘求和的方法及问题总结。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。
Python阶乘求和的方法
题目描述:
获得用户输入的整数n,输出 1!+2!+…+n!的值。
如果输入数值为0、负数、非数字或非整数,输出提示信息:输入有误,请输入正整数。
方法一:#factTest1
def main():
a = input()
sum = 0
if a.isdigit():
n = eval(a)
if n > 0:
fact = 1
for i in range(1, n+1):
fact *= i
sum += fact
print(sum)
else:
print("输入有误,请输入正整数")
else:
print("输入有误,请输入正整数")
main()
方法二:递归思想#factTest2
import sys
sys.setrecursionlimit(5000)
def getSum(i):
sum = 0
if i==0:
return 0
else:
for x in range(1,i+1):
sum += fact(x)
return sum
def fact(m):
if m==0:
return 1
else:
return m*fact(m-1)
def main():
n = input()
if n.isdigit():
a = eval(n)
if a>0:
result = getSum(a)
print(result)
else:
print("输入有误,请输入正整数")
else:
print("输入有误,请输入正整数")
main()
问题总结:
当使用递归方法求1024的阶乘时,出现了一个异常:RecursionError: maximum recursion depth exceeded in comparison,超出了递归的最大深度。一些网友提到Python中默认的最大递归深度为1000,但在实际测试中,我的电脑到997的时候就出现异常了,不知道这是由什么决定的。因此,为了能够计算1024的阶乘,需要为最大递归深度赋予一个更大的值。这里可以采用以下方法:import sys
sys.setrecursionlimit(5000) #修改为5000
另外,也可以查看最大递归深度:import sys
sys.getrecursionlimit() # output:1000
关于使用Python阶乘求和的方法及问题总结就分享到这里了,当然并不止以上和大家分析的办法,不过小编可以保证其准确性是绝对没问题的。希望以上内容可以对大家有一定的参考价值,可以学以致用。如果喜欢本篇文章,不妨把它分享出去让更多的人看到。
python奇数阶乘求和_使用Python阶乘求和的方法及问题总结相关推荐
- 用python计算1~100的阶乘之和_在Python中递归函数调用举例and匿名函数lambda求1~100的和及计算阶乘举例...
1.递归列出目录里的文件的脚本举例 列出目录中的文件可以通过下面方法:os.listdir() In [1]: import os In [4]: os.listdir('/root') Out[4] ...
- python求和_用python求和
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 我正在计算一个求和级数. 我有一个有值的表(见下文)a_(ij),并且p = 1 ...
- python 依据某几列累加求和_关于Python数组求和的四个问题及详解,让你更加爱Python!...
总结了四个数求和的问题及详解,如果你正在学习Python的话,可以多学习一下. | 问题一:专题概述 代码相关 本节的内容 通过第一个问题来初步了解数组求和的两种常用方法 Two Sum 给定一个整数 ...
- python之禅 中文_《Python之禅》中对于Python编程过程中的一些建议
<Python之禅>中对于Python编程过程中的一些建议 来源:中文源码网 浏览: 次 日期:2018年9月2日 [下载文档: <Python之禅>中对于Pyt ...
- python 仪表数字识别_利用Python进行数字识别
思路 通过Python实现KNN算法.而KNN算法就是K最近邻(k-Nearest Neighbor,KNN)分类算法,是一个理论上比较成熟的方法,也是最简单的机器学习算法之一.该方法的思路是:如果一 ...
- python大牛 关东升_《Python从小白到大牛》第4章 Python语法基础
本章主要为大家介绍Python的一些语法,其中包括标识符.关键字.常量.变量.表达式.语句.注释.模块和包等内容. 标识符和关键字 任何一种计算机语言都离不开标识符和关键字,因此下面将详细介绍Pyth ...
- python list查找元素_使用python list 查找所有匹配元素的位置实例
使用python list 查找所有匹配元素的位置实例 如下所示: import re word = "test" s = "test abcdas test 1234 ...
- python画交互式地图_使用Python构建交互式地图-入门指南
python画交互式地图 Welcome to The Beginner's Guide to Building Interactive Maps in Python 欢迎使用Python构建交互式地 ...
- python正则表达式group用法_【Python】正则表达式用法
导读:正则在各语言中的使用是有差异的,本文以 Python 3 为基础.本文主要讲述的是正则的语法,对于 re 模块不做过多描述,只会对一些特殊地方做提示. 很多人觉得正则很难,在我看来,这些人一定是 ...
- python出现的意义_[转]Python中下划线以及命名空间的意义
Python 用下划线作为变量前缀和后缀指定特殊变量/方法. 主要存在四种情形 1. 1. object # public 2. __object__ # special, python system ...
最新文章
- dell support
- git 版本操作命令大全
- 成功解决TypeError: 'float' object cannot be interpreted as an integer
- 如何独立实现一个基于知识图谱的问答系统
- VTK:绘图之StackedPlot
- latex中erro:extra alignment tab has changed to\cr但列数没错的解决方法
- 【笔记】汇编..寄存器和地址的概述
- SQLServer2005/2008新的高效分页方法-row_number()over函数的使用
- 2021年大数据面试宝典完整版(含答案解析)
- 知识付费系统源码基于PHP开源的网站内容付费源码|知识付费小程序源码
- 【业余无线电BI1FKP】宝峰UV9R-Plus写频、自制写频线
- 08CMS之后台二次开发
- CodeSmith(C#)简单示例及相关小知识
- 2.0 正式开始整理一下工训赛(全国大学生工程实践和创新能力大赛),智能垃圾桶的制作流程和参赛历程
- java中画幅相机推荐_比全画幅更大 平民中画幅相机推荐
- RTL8367RB -CG
- onenote正在与服务器联系以获取信息,随时记录重要信息 – OneNote
- 下载夜神模拟器-安装autojs-连接vscode
- java基于springboot+vue+elementui的实验室预约管理系统 前后端分离
- qt emit是什么意思_2020年11月14日 无赞赏QT吗哪 :在历史的掌权者面前作信心的决断...
热门文章
- 中国无缘Windows 8盒装版 .
- 下次你再临脚来找我,我去你麻痹!
- 千兆交换机VS百兆交换机 哪一款更适合你?
- java-net-php-python-springboot社区志愿者管理系统计算机毕业设计程序
- 业务安全情报第16期 | 大促8成优惠券竟被“羊毛党”抢走!?
- Android逆向工程:带你领略MIUI系统的账号安全防范机制:账号是从哪里获取的?
- Unity 之Vector3的球形插值Slerp详解
- 【主流技术】ElasticSearch 在 Spring 项目中的实践
- Office 公式编号
- (蓝桥真题)剪格子(搜索+剪枝)