Я это:Python встроенный условный конкатенации
msg = time + b' - ' + Logger.LEVELS_WORD[msg_loglevel] + b': ' + msg.encode('utf-8') + b'\n'
Поскольку иногда тзд уже байт, я хотел Concat msg.encode («UTF-8»), если это строка, либо просто сбщ, так что я сделал это:
msg = time + b' - ' + Logger.LEVELS_WORD[msg_loglevel] + b': ' + msg if isinstance(msg, bytes) else msg.encode('utf-8') + b'\n'
Но это не работает, как я ожидал, так как в настоящее время msg equals msg
. (время + уровень журнала не добавляется).
Должен ли я делать, если/else вместо этого?
Что вы ожидали и что он сделал? –
@AmitGold concat msg.encode ('utf-8') или msg в зависимости от того, был ли он уже байтами. – JorgeeFG
вместо одного из 'msg' s, измените его на нечто подобное, как '_msg', а затем выполните' msg = _msg' –