2017-08-30 40 views
1

images_name = "%s/%03d_image.jpg" % (target, i)的Python:非空的格式字符串传递给对象.__ format__

我已经格式化它 images_name = '{:03d_image.jpg}'.format((target, i))

能否请你指出我出错误了吗?

也可以这样更好地格式化?

format_str = ('%s: Step %d, Loss = %.2f (%.1f examples/sec; %.3f ' 'sec/batch)')

print(format_str % (datetime.now(), step, loss_value,examples_per_sec, duration))

回答

1

您应指定就像你用旧格式的风格进行独立的占位符和不包括不需要花括号内格式化部分:

images_name = '{}/{:03d}_image.jpg'.format(target, i) 

同样的规则适用于第二个字符串:

format_str = '{}: Step {:d}, Loss = {:.2f} ({:.1f} examples/sec; {:.3f} sec/batch)' 
print(format_str.format(datetime.now(), step, 
         loss_value, examples_per_sec, duration)) 

了解更多关于old and new format specifications in Python

相关问题