我想计算数字的指数
retrieveDialingCode
TypeError:必须是str,而不是int
答案 0 :(得分:4)
您必须在打印之前将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")
答案 1 :(得分:4)
您需要将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))
另一种选择是使用字符串格式:
print(f"Hola, ahora i vale{i}y su exponent{i ** 2}")
使用Python 3.6,您还可以:
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glMatrixMode (GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0f, 800, 0.0f, 400, 0.0f, 1.0f);
glMatrixMode (GL_MODELVIEW);
glLoadIdentity();
glPushMatrix();
glColor3f(255.0, 255.0, 255.0);
drawRect(racket_left_x, racket_left_y, racket_width, racket_height);
drawRect(racket_right_x, racket_right_y, racket_width,
racket_height);
glPopMatrix();
// drawBall();
//drawBall2();
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
drawBall();
glPopMatrix();
glPopMatrix();
glutSwapBuffers();
有关更多选项,请参阅https://pyformat.info/。
答案 2 :(得分:0)
Python是强类型的,不会自动强制执行。您需要对求幂结果进行显式转换,以将其与字符串连接:
... + "y su exponent" + str(i ** 2) )