我想把一些东西写成一行,如:
Blah blah 123456 0.0000123
我使用了以下代码:
value1 = 123456
value2 = 0.0000123
k = "Blah blah" + value1 +value2
File.write(k)
#outFile.write("Blah blah %s %s" % (value1 ,value2) )
输出始终为:
Blah blah 123456
0.0000123
答案 0 :(得分:1)
您必须将整数转换为字符串(请参阅此答案:Making a string out of a string and an integer in Python)
k = "Blah blah" + str(value1) + str(value2)
与%s格式化程序相同。参数应该是str(变量),而不仅仅是变量
答案 1 :(得分:1)
与字符串连接时的整数在之后具有假定的结束字符。要解决此问题,您可以在连接所有这些内容之前将这些整数转换为字符串。您可以使用此处编写的str()函数执行此操作:https://docs.python.org/2/library/functions.html
答案 2 :(得分:1)
您需要将它们转换为字符串并删除它们以删除任何拖尾字符。
str(value1).strip() + str(value2).strip()
答案 3 :(得分:0)
我将如何做到这一点:
>>> value1 = '123456'
>>> value2 = '0.000123'
>>> k = "Blah blah " + value1 + " " + value2
>>> print k
Blah blah 123456 0.000123
请注意第二个" blah"之后的空格,以及第3行中value1和value2之间的空格。
您必须确保将value1和value2设置为字符串。你也可以这样做:
>>> value1 = 123456
>>> value2 = 0.000123
>>> str(value1)
>>> str(value2)