Python中如何实现阶乘
发表于:2024-10-06 作者:千家信息网编辑
千家信息网最后更新 2024年10月06日,这篇文章主要介绍Python中如何实现阶乘,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!相信大家对阶乘都不陌生。不知道阶乘的可以看这里:一个数的阶乘:比如5的阶乘在python
千家信息网最后更新 2024年10月06日Python中如何实现阶乘
这篇文章主要介绍Python中如何实现阶乘,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
相信大家对阶乘都不陌生。不知道阶乘的可以看这里:
一个数的阶乘:
比如5的阶乘
在python中大部分教程一般推荐用递归函数完成:
#!/usr/bin/python3"""Python2,3都可以"""def factorial(n):#主体函数 if n == 1: return 1 return n * factorial(n-1)res = input("请输入n:")print(factorial(res))
但是这样不仅阅读不方便,还有可能在n非常大时造成栈溢出的情况。
>>> factorial(1000)Traceback (most recent call last): File "", line 1, in File " ", line 4, in factorial File " ", line 4, in factorial File " ", line 4, in factorial [Previous line repeated 995 more times] File " ", line 2, in factorialRecursionError: maximum recursion depth exceeded in comparison
所以我更倾向于这个:
#!/usr/bin/pythonli = []def factorial(n): global li result = 1 for i in range(n): li.append(i+1) for j in li: result = result * j return resultprint(factorial(int(input("请输入n:"))))
通过单一列表存储,可以有效减少内存使用,并且这个调用只占用几个栈,不会造成溢出。
或者math模块中也有函数可以使用:
import matha = input("N:")fac = math.factorial(a)print(fac)
要么就是非常简单的for:
#中文变量名是合法的!#中文变量名是合法的!!#中文变量名是合法的!!!数 = input("数:")a = 1for i in range(1,数+1): a = a * iprint(a)
以上是"Python中如何实现阶乘"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
阶乘
合法
函数
变量
中文
内容
篇文章
输入
有效
陌生
个数
主体
价值
倾向
兴趣
内存
小伙
小伙伴
就是
情况
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
深圳生活网络技术有限公司
电信网络安全法律法规
北京富讯盈科网络技术有限公司
招聘软件开发人员哪里便宜
有服务器和域名还需要主机吗
庭教育与网络安全
服务器华为的和inter的比较
灵武市软件开发定制费用
域控服务器装什么版本的好
美团软件开发公司
越南网络安全公司
视频服务器参数
全球网络安全行业专利申请数量
衣信互联网科技有限公司
怎么打开数据库文件spl
服务器r740支持什么显卡
网络安全和信息化汇报
软件开发应提供
郑州办公系统软件开发定制费用
软件开发什么是架构
无锡医疗软件开发招聘信息
宏达软件开发使用
域管理教程及dns服务器
计算机网络技术初学者题
庆安网络安全中心举报
达梦涉密数据库
服务器上的数据库在哪里
数据库和人工智能的不同
软件开发资格证考取多少钱
中央网信办 网络安全法