如何计算python3.6中for循环的指数?

2024-09-28 21:33:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我想计算这些数字的指数

print("Start")
for i in [3,4,5]
  print("Hola, ahora i vale"+str(i) + "y su exponent" + i ** 2 )
print("End")

TypeError:必须是str,而不是int


Tags: infor数字指数startsuintend
3条回答

Python是强类型的,不执行自动强制。您需要对求幂结果进行显式转换,以将其与字符串连接起来:

... + "y su exponent" + str(i ** 2) )

您需要将i ** 2转换为字符串,就像转换i一样。你知道吗

print("Hola, ahora i vale"+str(i) + "y su exponent" + str(i ** 2))

或者,您可以让print()通过将其作为参数传递来处理它:

print("Hola, ahora i vale", i, "y su exponent", i ** 2)

另一个选项是使用字符串格式:

print("Hola, ahora i vale%dy su exponent%d" % (i, i ** 2))

使用Python 3.6,还可以执行以下操作:

print(f"Hola, ahora i vale{i}y su exponent{i ** 2}")

更多选项请参见https://pyformat.info/。你知道吗

打印前必须将int强制转换为str

print("Start")
for i in [3,4,5]:
    print("Hola, ahora i vale" + str(i) + "y su exponent" + str(i ** 2) )
print("End")

或者可以这样做,使用format语法:

print("Start")
for i in [3,4,5]:
    print("Hola, ahora i vale {} y su exponent {}".format(i, i ** 2))
print("End")

相关问题 更多 >