Python 格式的数字(打印小数点左边的数字)
Number Formatting in Python (Printing Number Left of Decimal)
我正在尝试使用以下代码打印整数(小数点左边的数字):
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.
您正在混合打印字符串的方式。要使用 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
试试这个:
print "Completed in {} minutes, {} seconds.".format(int(time_difference / 60), int(time_difference % 60))
阅读有关 "format" statement in the Python documentation 的更多信息。
此外,避免使用“+”连接字符串。 join list of strings.
通常效率更高
我正在尝试使用以下代码打印整数(小数点左边的数字):
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.
您正在混合打印字符串的方式。要使用 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
试试这个:
print "Completed in {} minutes, {} seconds.".format(int(time_difference / 60), int(time_difference % 60))
阅读有关 "format" statement in the Python documentation 的更多信息。
此外,避免使用“+”连接字符串。 join list of strings.
通常效率更高