【问题标题】:for loop to a while loop [closed]for循环到while循环[关闭]
【发布时间】:2017-02-25 12:55:13
【问题描述】:

我正在尝试将其更改为 while 循环。

number = int(input("enter number : "))
exponent = int(input("enter exponent : "))
result = number

for i in range(1, exponent):
    result = number * result
print(number, " to the power of ", exponent, " is ", result)

【问题讨论】:

  • 为什么要将其转换为while 循环?
  • 您究竟为什么要尝试将其更改为 while 循环?
  • 在python中你有幂运算符**
  • 有很多很好的 Python 教程可以教你如何编写 while 循环。
  • 该任务需要一个while循环而不是运算符。

标签: python python-3.x loops for-loop while-loop


【解决方案1】:

你有 4 种可能性:

number = int(input("enter number : "))
exponent = int(input("enter exponent : "))

# 1st possibility
result = number
for i in range(1, exponent):
    result = number * result
print(number, " to the power of ", exponent, " is ", result)


# 2nd possibility
result = number
i = 1
while i < exponent:
    result = number * result
    i += 1

print(number, " to the power of ", exponent, " is ", result)

# 3rd possibility
print(number, " to the power of ", exponent, " is ", number**exponent)

# 4th possibility
print(number, " to the power of ", exponent, " is ", pow(number, exponent))

您应该选择#3 或#4 ;)。

【讨论】:

  • 4. pow 内置函数。
  • @tobias_k:使用pow 有什么好处吗?该文档提到它相当于**
  • "有两个参数,相当于x**y有三个参数,相当于(x**y) % z,但可能更有效(例如,对于longs)。"但是,是的,它基本上是等价的,但其他两个变体也是如此。
  • @tobias_k 很高兴知道,谢谢。
  • 这太好了,谢谢。我现在肯定更明白了。
【解决方案2】:
number = int(input("enter number : "))
exponent = int(input("enter exponent : "))
result = number
i = 1
while i < exponent:
    result = number * result
    i += 1
print(number, " to the power of ", exponent, " is ", result)

这就是你要找的吗?

【讨论】: