首页 > 解决方案 > Python3 在日期前面放了一个“b”

问题描述

这个 Python 3 代码:

commentmsg =   '\n' +  svn_date + ' Repo: '+ svn_repository  + ' Rev: ' + svn_revision  + ' User: ' + svn_author + '\n'

给出这个结果:

b'2020-01-29' b'09:26:49' Repo: SubversionTraining Rev: 478 User: bengt.nilsson

日期和时间前面有一个“b”,它来自哪里,我该如何摆脱它?这从 Python 3 开始。

标签: python

解决方案


发生这种情况是因为您的变量之一可能是类型bytes而不是strb代表一个bytes对象)。尝试执行以下操作:

raw_data = [svn_date, svn_repository, svn_revision, svn_author]
data = [ele.decode() for ele in raw_data if isinstance(ele, bytes) else ele]
commentmsg = f"\n{data[0]} Repo: {data[1]} Rev: {data[2]} User: {data[3]}"

推荐阅读