dub*_*ech 0 python logging list
好的简单问题,请不要杀了我.
要记录列表的长度我做:
logger.info("the length of my list is: " + str(len(mylist)));
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法在python中做到这一点?
我会做这样的事情:
logger.info('the length of my list is: {0}'.format(len(mylist)))
Run Code Online (Sandbox Code Playgroud)
编辑:有关为什么format应该更好的更多信息%,请查看PEP 3101:
'%'运算符主要受限于它是二元运算符,因此最多可以包含两个参数.其中一个参数已经专门用于格式字符串,所有其他变量都被压缩到剩下的参数中.目前的做法是使用字典或元组作为第二个参数,但正如许多人评论[3],这缺乏灵活性."全有或全无"方法(意味着必须在只有位置参数或只有命名参数之间进行选择)被认为是过度约束.
另请注意,您甚至可以将自己的自定义格式添加到对象中.因此,您不会限制一组已定义的转换字符,但您可以根据需要定义自己的迷你语言来格式化对象.这是非常强大的东西,无法通过%.
如文档中所述:
格式(值[,format_spec])
将值转换为"格式化"表示,由format_spec控制.format_spec的解释取决于value参数的类型,但是大多数内置类型都使用标准格式化语法:Format Specification Mini-Language.