我正在升级一个旧的python 2程序,并且在升级代码和所有内容时遇到了很多麻烦,但是由于文档,我已经能够度过难关,但是我无法弄清楚这一点。
这是一个非常简单的函数,但我不断遇到奇怪的错误,而我在python2中从未遇到过,这是代码:
def log(self, message):
print("[SYSTEM][{0}]".format(datetime.strftime(time.gmtime()+message, "%Y-%m-%d %H:%M:%S")))
现在我得到的错误是这个:
TypeError: can only concatenate tuple (not "str") to tuple
这是输出到控制台的外观:
[SYSTEM][2020-06-04 17:30:51]MessageHere
[任何帮助,不胜感激,因为这让我发疯。
修正您的原始方法:
def log(self, message):
print("[SYSTEM][{0}]".format(datetime.utcnow().strftime('%Y-%m-%d %H:%M:%S')) + message)
使用f字符串的更干净的版本:
def log(self, message):
print(f"[SYSTEM][{datetime.utcnow().strftime('%Y-%m-%d %H:%M:%S')}{message}")