Skip to main content
 首页 » 编程设计

python之在一行 Python 中从 1 到 n 求和

2025年05月04日11zhenyulu

给定数字 n,我需要求从 1 到 n 的数字之和。 示例输入和输出:

100 
5050 

所以我想到了 print(sum(range(int(input())+1))) 它在一行中解决了这个问题但是需要很长时间因为它是 O (n)。显然,如果我们知道数字 n 那么答案也可以在一行中给出:print(n * (n+1)/2) 但如何替换 n 与 input() 仍然使程序运行?

请您参考如下方法:

就好像它是 Javascript 一样;创建一个带有参数 n 的函数,然后立即使用 input() 的结果调用它:

(lambda n: n * (n + 1) / 2)(int(input()))