You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何优化用户输入阶乘的代码?精简行数且不使用库

阶乘代码精简优化方案

先看原代码逻辑:初始化变量a=1,循环输入值次数,每次用前一次结果乘当前循环的下一个数,逐次打印阶乘结果。下面给出几种符合要求的精简优化方案,全程不使用任何库:

一、保持逐次打印格式的精简版

精简到2行(可读性较好)

a=1
for i in range(1,int(input("Enter: "))+1): a*=i; print(a)

优化点:直接让循环变量i从1开始遍历到输入值,省去原代码里_+1的额外计算,同时把赋值和打印合并到循环行里,减少行数。

极致精简到1行(Python 3.8+支持)

a=1; [a:=a*i and print(a) for i in range(1,int(input("Enter: "))+1)]

利用列表推导式和赋值表达式:=完成计算与打印,一行搞定所有逻辑。

二、计算完成后统一打印最终结果的精简版

精简到2行

a=1
for i in range(1,int(input("Enter: "))+1): a*=i
print(a)

先完成所有阶乘计算,最后一次性输出结果,逻辑清晰且行数更少。

极致精简到1行(Python 3.8+支持)

a=1; [a:=a*i for i in range(1,int(input("Enter: "))+1)]; print(a)

借助赋值表达式,把计算和打印合并到一行。

内容的提问来源于stack exchange,提问作者Ved Patel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 10:34:56