如何在变量后面添加额外的字符串?

2024-03-29 05:52:53 发布

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

k=int(input("enter a number"))

for i in range (1,11):
result = i * k
print (i, "x", k + "is" , result) 

如果我去掉“是”,它会显示:

    1 x 7 7 
    2 x 7 14
    3 x 7 21
    4 x 7 28
    5 x 7 35
    6 x 7 42
    7 x 7 49
    8 x 7 56
    9 x 7 63
    10 x 7 70

当我添加“是”时,它显示:

 enter a number7
   Traceback (most recent call last):
  File "C:/Windows/System32/cool.py", line 7, in <module>
    print (i, "x", k + "is" , result)
    TypeError: unsupported operand type(s) for +: 'int' and 'str'

但我希望它看起来像:

 1 x 7 is 7...

Tags: innumbermostforinputisrangeresult
2条回答

你的问题是这部分:

k + "is"

不能将字符串和整数相加。尝试用5 + "X"编写一个简单的程序,您将看到相同的问题。要解决此问题,请确保在添加到另一个字符串之前将整数转换为字符串。你知道吗

print (i, "x", str(k) + "is" , result)

不能像执行k + "is"时那样将字符串与数字连接起来。你知道吗

要么使用str函数将k转换为字符串,要么改用字符串格式,这样更好更安全

print "{0} x {1} is {2}".format(i, k, result)

或者如果你想命名你的变量

print "{i} x {k} is {result}".format(i=i, k=k, result=result)

相关问题 更多 >