首页 > 解决方案 > 有人可以帮我把它改成一行代码吗?

问题描述

有人可以帮我将这些代码行简化为一个吗

x = 1.0
a = float(input('Ingrese el valor de a: \n'))
for k in range(1, 10):
    x = (x + a/x)/2
print(x)

标签: python

解决方案


我不完全知道您在寻找什么,但这段代码使用牛顿法计算平方根,迭代 10 次。如果您想计算 sqrt,可以使用 one-liner:

print(float(input("Enter a number: "))**0.5)

我认为不可能在一行中执行与您完全相同的代码,因为您可能需要 import reducefrom functools,但这至少需要两行。¯\ (ツ)


推荐阅读