标题说明了一切,我需要在一行中记录两个字符串 例如,像这样:
logging.info(string1,string2)
谢谢:)
答案 0 :(得分:8)
日志记录功能的行为如下:
result = arg1 % (arg2, arg3, ...)
您将尝试使用第二个字符串格式化第一个字符串:
result = string1 % string2
手动指定格式化字符串:
logging.info('%s %s', string1, string2)
或者将它们连接成一个字符串:
logging.info(' '.join([string1, string2]))
答案 1 :(得分:1)
您可以使用%-formatting,如下所示:
logging.info("%s %s", string1, string2)
例如:
>>> string1, string2 = "spam", "pie"
>>> logging.info("%s %s", string1, string2)
INFO: spam pie
答案 2 :(得分:1)
使用 f 字符串,您可以将其转换为单行并使其更具可读性。
# python3 f-strings
logging.info(f'{string1} {string2}')
答案 3 :(得分:0)
logger.info("String 1: {0!r} --- String 2: {1!r}".format(string1, string2))
演示:
>>> print "String 1: {0!r} --- String 2: {1!r}".format('hello', 'world')
String 1: 'hello' --- String 2: 'world'
>>> print "String 1: {1!r} --- String 2: {0!r}".format('world', 'hello')
String 1: 'hello' --- String 2: 'world'
这里有两点需要注意:
答案 4 :(得分:0)
>>> ( s1,s2 ) = ( 'apple','mango' );
>>> print( '{},{}'.format(s1,s2) );
apple,mango