我正在尝试使用以下代码打印整数(小数点左边的数字):
print "Completed in %g".format(str(time_difference / 60), 1.0) + " minutes, %g".format(time_difference % 60, 1.0) + " seconds."
相反,我得到:
Completed in %g minutes, %g seconds.
答案 0 :(得分:2)
您正在混合打印字符串的方法。要使用format
,请参阅文档here。您必须使用{}
。例如:
>>> print "Completed in {0:g} minutes, {1} seconds".format(time_difference % 60, 1.0)
Completed in 40 minutes, 1.0 seconds
要使用旧表示法,您必须使用%
进行格式化。见string formatting:
>>> print "Completed in %g minutes, %g seconds" % (time_difference % 60, 1.0)
Completed in 40 minutes, 1 seconds
答案 1 :(得分:1)
试试这个:
print "Completed in {} minutes, {} seconds.".format(int(time_difference / 60), int(time_difference % 60))
详细了解"format" statement in the Python documentation。
另外,避免使用" +"连接字符串。 join list of strings通常效率更高。