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

时间:2015-11-23 00:34:59

标签: 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...

2 个答案:

答案 0 :(得分:2)

您不能像执行k + "is"时那样将字符串与数字连接。

使用k函数将str转换为字符串,或者使用字符串格式,这样可以更好,更安全地使用

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

或者如果您想为变量命名

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

答案 1 :(得分:0)

你的问题就在这一部分:

k + "is"

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

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